swagger: "2.0"
info:
  description: |

    [Differences versus the previous schema version](apidocs/aai_swagger_v16.diff)

    Copyright &copy; 2017-18 AT&amp;T Intellectual Property. All rights reserved.

    Licensed under the Creative Commons License, Attribution 4.0 Intl. (the &quot;License&quot;); you may not use this documentation except in compliance with the License.

    You may obtain a copy of the License at

    (https://creativecommons.org/licenses/by/4.0/)

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

    This document is best viewed with Firefox or Chrome. Nodes can be found by appending /#/definitions/node-type-to-find to the path to this document. Edge definitions can be found with the node definitions.
  version: "v16"
  title: Active and Available Inventory REST API
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  contact:
    name:
    url:
    email:
host:
basePath: /aai/v16
schemes:
  - https
paths:
  /cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureComplexesComplexCtagPoolsCtagPoolRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: target-pe
          in: path
          description: The Target provider edge router
          required: true
          type: string
          example: __TARGET-PE__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureComplexesComplexCtagPoolsCtagPool.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureComplexesComplexCtagPoolsCtagPoolRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: target-pe
          in: path
          description: The Target provider edge router
          required: true
          type: string
          example: __TARGET-PE__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
  /cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools/ctag-pool/{target-pe}/{availability-zone-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns ctag-pool
      description: returns ctag-pool
      operationId: getCloudInfrastructureComplexesComplexCtagPoolsCtagPool
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ctag-pool"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: target-pe
          in: path
          description: The Target provider edge router
          required: true
          type: string
          example: __TARGET-PE__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing ctag-pool
      description: |
        Create or update an existing ctag-pool.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureComplexesComplexCtagPoolsCtagPool
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: target-pe
          in: path
          description: The Target provider edge router
          required: true
          type: string
          example: __TARGET-PE__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: body
          in: body
          description: ctag-pool object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureComplexesComplexCtagPoolsCtagPool.json)
          required: true
          schema:
            $ref: "#/definitions/ctag-pool"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing ctag-pool
      description: |
        Update an existing ctag-pool
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureComplexesComplexCtagPoolsCtagPool
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: target-pe
          in: path
          description: The Target provider edge router
          required: true
          type: string
          example: __TARGET-PE__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: body
          in: body
          description: ctag-pool object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/ctag-pool"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing ctag-pool
      description: delete an existing ctag-pool
      operationId: deleteCloudInfrastructureComplexesComplexCtagPoolsCtagPool
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: target-pe
          in: path
          description: The Target provider edge router
          required: true
          type: string
          example: __TARGET-PE__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/complexes/complex/{physical-location-id}/ctag-pools:
    get:
      tags:
        - CloudInfrastructure
      summary: returns ctag-pools
      description: returns ctag-pools
      operationId: getCloudInfrastructureComplexesComplexCtagPools
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ctag-pools"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: availability-zone-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/complexes/complex/{physical-location-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureComplexesComplexRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureComplexesComplex.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureComplexesComplexRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
  /cloud-infrastructure/complexes/complex/{physical-location-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns complex
      description: returns complex
      operationId: getCloudInfrastructureComplexesComplex
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/complex"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing complex
      description: |
        Create or update an existing complex.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureComplexesComplex
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: body
          in: body
          description: complex object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureComplexesComplex.json)
          required: true
          schema:
            $ref: "#/definitions/complex"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing complex
      description: |
        Update an existing complex
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureComplexesComplex
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: body
          in: body
          description: complex object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/complex"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing complex
      description: delete an existing complex
      operationId: deleteCloudInfrastructureComplexesComplex
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: path
          description: Unique identifier for physical location, e.g., CLLI
          required: true
          type: string
          example: __PHYSICAL-LOCATION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/complexes:
    get:
      tags:
        - CloudInfrastructure
      summary: returns complexes
      description: returns complexes
      operationId: getCloudInfrastructureComplexes
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/complexes"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: physical-location-id
          in: query
          description:
          required: false
          type: string
        - name: data-center-code
          in: query
          description:
          required: false
          type: string
        - name: complex-name
          in: query
          description:
          required: false
          type: string
        - name: identity-url
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: volume-group-id
          in: path
          description: Unique ID of volume-group.
          required: true
          type: string
          example: __VOLUME-GROUP-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroup.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: volume-group-id
          in: path
          description: Unique ID of volume-group.
          required: true
          type: string
          example: __VOLUME-GROUP-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups/volume-group/{volume-group-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns volume-group
      description: returns volume-group
      operationId: getCloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroup
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/volume-group"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: volume-group-id
          in: path
          description: Unique ID of volume-group.
          required: true
          type: string
          example: __VOLUME-GROUP-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing volume-group
      description: |
        Create or update an existing volume-group.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: volume-group-id
          in: path
          description: Unique ID of volume-group.
          required: true
          type: string
          example: __VOLUME-GROUP-ID__
        - name: body
          in: body
          description: volume-group object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroup.json)
          required: true
          schema:
            $ref: "#/definitions/volume-group"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing volume-group
      description: |
        Update an existing volume-group
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroup
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: volume-group-id
          in: path
          description: Unique ID of volume-group.
          required: true
          type: string
          example: __VOLUME-GROUP-ID__
        - name: body
          in: body
          description: volume-group object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/volume-group"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing volume-group
      description: delete an existing volume-group
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionVolumeGroupsVolumeGroup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: volume-group-id
          in: path
          description: Unique ID of volume-group.
          required: true
          type: string
          example: __VOLUME-GROUP-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/volume-groups:
    get:
      tags:
        - CloudInfrastructure
      summary: returns volume-groups
      description: returns volume-groups
      operationId: getCloudInfrastructureCloudRegionsCloudRegionVolumeGroups
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/volume-groups"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: volume-group-id
          in: query
          description:
          required: false
          type: string
        - name: volume-group-name
          in: query
          description:
          required: false
          type: string
        - name: heat-stack-id
          in: query
          description:
          required: false
          type: string
        - name: vnf-type
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/volumes/volume/{volume-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolumeRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: volume-id
          in: path
          description: Unique ID of block storage volume relative to the vserver.
          required: true
          type: string
          example: __VOLUME-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolume.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolumeRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: volume-id
          in: path
          description: Unique ID of block storage volume relative to the vserver.
          required: true
          type: string
          example: __VOLUME-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/volumes/volume/{volume-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns volume
      description: returns volume
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolume
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/volume"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: volume-id
          in: path
          description: Unique ID of block storage volume relative to the vserver.
          required: true
          type: string
          example: __VOLUME-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing volume
      description: |
        Create or update an existing volume.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolume
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: volume-id
          in: path
          description: Unique ID of block storage volume relative to the vserver.
          required: true
          type: string
          example: __VOLUME-ID__
        - name: body
          in: body
          description: volume object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolume.json)
          required: true
          schema:
            $ref: "#/definitions/volume"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing volume
      description: |
        Update an existing volume
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolume
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: volume-id
          in: path
          description: Unique ID of block storage volume relative to the vserver.
          required: true
          type: string
          example: __VOLUME-ID__
        - name: body
          in: body
          description: volume object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/volume"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing volume
      description: delete an existing volume
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumesVolume
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: volume-id
          in: path
          description: Unique ID of block storage volume relative to the vserver.
          required: true
          type: string
          example: __VOLUME-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/volumes:
    get:
      tags:
        - CloudInfrastructure
      summary: returns volumes
      description: returns volumes
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverVolumes
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/volumes"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: volume-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserver.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vlan
      description: returns vlan
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vlans
      description: returns vlans
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l-interface
      description: returns l-interface
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}/l-interfaces:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserverLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers/vserver/{vserver-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vserver
      description: returns vserver
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserver
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vserver"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing vserver
      description: |
        Create or update an existing vserver.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserver
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: body
          in: body
          description: vserver object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserver.json)
          required: true
          schema:
            $ref: "#/definitions/vserver"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing vserver
      description: |
        Update an existing vserver
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserver
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: body
          in: body
          description: vserver object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vserver"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing vserver
      description: delete an existing vserver
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVserversVserver
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: path
          description: Unique identifier for this vserver relative to its tenant
          required: true
          type: string
          example: __VSERVER-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/vservers:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vservers
      description: returns vservers
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantVservers
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vservers"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: vserver-id
          in: query
          description:
          required: false
          type: string
        - name: vserver-name
          in: query
          description:
          required: false
          type: string
        - name: vserver-name2
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: in-maint
          in: query
          description:
          required: false
          type: boolean
        - name: is-closed-loop-disabled
          in: query
          description:
          required: false
          type: boolean
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/nos-servers/nos-server/{nos-server-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: nos-server-id
          in: path
          description: Unique identifier for this nos relative to its tenant
          required: true
          type: string
          example: __NOS-SERVER-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServer.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: nos-server-id
          in: path
          description: Unique identifier for this nos relative to its tenant
          required: true
          type: string
          example: __NOS-SERVER-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/nos-servers/nos-server/{nos-server-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns nos-server
      description: returns nos-server
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServer
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/nos-server"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: nos-server-id
          in: path
          description: Unique identifier for this nos relative to its tenant
          required: true
          type: string
          example: __NOS-SERVER-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing nos-server
      description: |
        Create or update an existing nos-server.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: nos-server-id
          in: path
          description: Unique identifier for this nos relative to its tenant
          required: true
          type: string
          example: __NOS-SERVER-ID__
        - name: body
          in: body
          description: nos-server object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServer.json)
          required: true
          schema:
            $ref: "#/definitions/nos-server"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing nos-server
      description: |
        Update an existing nos-server
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServer
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: nos-server-id
          in: path
          description: Unique identifier for this nos relative to its tenant
          required: true
          type: string
          example: __NOS-SERVER-ID__
        - name: body
          in: body
          description: nos-server object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/nos-server"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing nos-server
      description: delete an existing nos-server
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServersNosServer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: nos-server-id
          in: path
          description: Unique identifier for this nos relative to its tenant
          required: true
          type: string
          example: __NOS-SERVER-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/nos-servers:
    get:
      tags:
        - CloudInfrastructure
      summary: returns nos-servers
      description: returns nos-servers
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenantNosServers
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/nos-servers"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: nos-server-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenantRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenant.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenantRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants/tenant/{tenant-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns tenant
      description: returns tenant
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenantsTenant
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/tenant"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing tenant
      description: |
        Create or update an existing tenant.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenant
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: body
          in: body
          description: tenant object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionTenantsTenant.json)
          required: true
          schema:
            $ref: "#/definitions/tenant"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing tenant
      description: |
        Update an existing tenant
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionTenantsTenant
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: body
          in: body
          description: tenant object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/tenant"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing tenant
      description: delete an existing tenant
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionTenantsTenant
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: path
          description: Unique id relative to the cloud-region.
          required: true
          type: string
          example: __TENANT-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/tenants:
    get:
      tags:
        - CloudInfrastructure
      summary: returns tenants
      description: returns tenants
      operationId: getCloudInfrastructureCloudRegionsCloudRegionTenants
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/tenants"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: tenant-id
          in: query
          description:
          required: false
          type: string
        - name: tenant-name
          in: query
          description:
          required: false
          type: string
        - name: tenant-context
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapability.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}/hpa-feature-attributes/{hpa-attribute-key}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributesRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributes.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributesRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}/hpa-feature-attributes/{hpa-attribute-key}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns hpa-feature-attributes
      description: returns hpa-feature-attributes
      operationId: getCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/hpa-feature-attributes"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing hpa-feature-attributes
      description: |
        Create or update an existing hpa-feature-attributes.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: body
          in: body
          description: hpa-feature-attributes object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributes.json)
          required: true
          schema:
            $ref: "#/definitions/hpa-feature-attributes"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing hpa-feature-attributes
      description: |
        Update an existing hpa-feature-attributes
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: body
          in: body
          description: hpa-feature-attributes object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/hpa-feature-attributes"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing hpa-feature-attributes
      description: delete an existing hpa-feature-attributes
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns hpa-capability
      description: returns hpa-capability
      operationId: getCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapability
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/hpa-capability"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing hpa-capability
      description: |
        Create or update an existing hpa-capability.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapability
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: body
          in: body
          description: hpa-capability object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapability.json)
          required: true
          schema:
            $ref: "#/definitions/hpa-capability"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing hpa-capability
      description: |
        Update an existing hpa-capability
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapability
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: body
          in: body
          description: hpa-capability object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/hpa-capability"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing hpa-capability
      description: delete an existing hpa-capability
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilitiesHpaCapability
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}/hpa-capabilities:
    get:
      tags:
        - CloudInfrastructure
      summary: returns hpa-capabilities
      description: returns hpa-capabilities
      operationId: getCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorHpaCapabilities
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/hpa-capabilities"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: hpa-capability-id
          in: query
          description:
          required: false
          type: string
        - name: hpa-feature
          in: query
          description:
          required: false
          type: string
        - name: architecture
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionFlavorsFlavor.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavorRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors/flavor/{flavor-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns flavor
      description: returns flavor
      operationId: getCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavor
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/flavor"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing flavor
      description: |
        Create or update an existing flavor.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavor
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: body
          in: body
          description: flavor object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionFlavorsFlavor.json)
          required: true
          schema:
            $ref: "#/definitions/flavor"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing flavor
      description: |
        Update an existing flavor
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavor
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: body
          in: body
          description: flavor object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/flavor"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing flavor
      description: delete an existing flavor
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionFlavorsFlavor
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: path
          description: Flavor id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __FLAVOR-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/flavors:
    get:
      tags:
        - CloudInfrastructure
      summary: returns flavors
      description: returns flavors
      operationId: getCloudInfrastructureCloudRegionsCloudRegionFlavors
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/flavors"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: flavor-id
          in: query
          description:
          required: false
          type: string
        - name: flavor-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/group-assignments/group-assignment/{group-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: group-id
          in: path
          description: Group id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __GROUP-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignment.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: group-id
          in: path
          description: Group id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __GROUP-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/group-assignments/group-assignment/{group-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns group-assignment
      description: returns group-assignment
      operationId: getCloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignment
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/group-assignment"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: group-id
          in: path
          description: Group id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __GROUP-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing group-assignment
      description: |
        Create or update an existing group-assignment.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: group-id
          in: path
          description: Group id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __GROUP-ID__
        - name: body
          in: body
          description: group-assignment object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignment.json)
          required: true
          schema:
            $ref: "#/definitions/group-assignment"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing group-assignment
      description: |
        Update an existing group-assignment
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignment
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: group-id
          in: path
          description: Group id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __GROUP-ID__
        - name: body
          in: body
          description: group-assignment object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/group-assignment"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing group-assignment
      description: delete an existing group-assignment
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionGroupAssignmentsGroupAssignment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: group-id
          in: path
          description: Group id, expected to be unique across cloud-region.
          required: true
          type: string
          example: __GROUP-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/group-assignments:
    get:
      tags:
        - CloudInfrastructure
      summary: returns group-assignments
      description: returns group-assignments
      operationId: getCloudInfrastructureCloudRegionsCloudRegionGroupAssignments
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/group-assignments"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: group-id
          in: query
          description:
          required: false
          type: string
        - name: group-type
          in: query
          description:
          required: false
          type: string
        - name: group-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/snapshots/snapshot/{snapshot-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshotRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: snapshot-id
          in: path
          description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
          required: true
          type: string
          example: __SNAPSHOT-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshot.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshotRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: snapshot-id
          in: path
          description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
          required: true
          type: string
          example: __SNAPSHOT-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/snapshots/snapshot/{snapshot-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns snapshot
      description: returns snapshot
      operationId: getCloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshot
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/snapshot"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: snapshot-id
          in: path
          description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
          required: true
          type: string
          example: __SNAPSHOT-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing snapshot
      description: |
        Create or update an existing snapshot.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshot
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: snapshot-id
          in: path
          description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
          required: true
          type: string
          example: __SNAPSHOT-ID__
        - name: body
          in: body
          description: snapshot object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshot.json)
          required: true
          schema:
            $ref: "#/definitions/snapshot"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing snapshot
      description: |
        Update an existing snapshot
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshot
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: snapshot-id
          in: path
          description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
          required: true
          type: string
          example: __SNAPSHOT-ID__
        - name: body
          in: body
          description: snapshot object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/snapshot"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing snapshot
      description: delete an existing snapshot
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionSnapshotsSnapshot
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: snapshot-id
          in: path
          description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
          required: true
          type: string
          example: __SNAPSHOT-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/snapshots:
    get:
      tags:
        - CloudInfrastructure
      summary: returns snapshots
      description: returns snapshots
      operationId: getCloudInfrastructureCloudRegionsCloudRegionSnapshots
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/snapshots"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: snapshot-id
          in: query
          description:
          required: false
          type: string
        - name: snapshot-name
          in: query
          description:
          required: false
          type: string
        - name: application
          in: query
          description:
          required: false
          type: string
        - name: application-vendor
          in: query
          description:
          required: false
          type: string
        - name: application-version
          in: query
          description:
          required: false
          type: string
        - name: prev-snapshot-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionImagesImageRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionImagesImage.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionImagesImageRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}/metadata/metadatum/{metaname}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns metadatum
      description: returns metadatum
      operationId: getCloudInfrastructureCloudRegionsCloudRegionImagesImageMetadataMetadatum
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadatum"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing metadatum
      description: |
        Create or update an existing metadatum.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionImagesImageMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionImagesImageMetadataMetadatum.json)
          required: true
          schema:
            $ref: "#/definitions/metadatum"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing metadatum
      description: |
        Update an existing metadatum
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionImagesImageMetadataMetadatum
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/metadatum"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing metadatum
      description: delete an existing metadatum
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionImagesImageMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}/metadata:
    get:
      tags:
        - CloudInfrastructure
      summary: returns metadata
      description: returns metadata
      operationId: getCloudInfrastructureCloudRegionsCloudRegionImagesImageMetadata
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadata"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: metaname
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images/image/{image-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns image
      description: returns image
      operationId: getCloudInfrastructureCloudRegionsCloudRegionImagesImage
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/image"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing image
      description: |
        Create or update an existing image.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionImagesImage
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: body
          in: body
          description: image object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionImagesImage.json)
          required: true
          schema:
            $ref: "#/definitions/image"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing image
      description: |
        Update an existing image
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionImagesImage
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: body
          in: body
          description: image object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/image"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing image
      description: delete an existing image
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionImagesImage
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: path
          description: Image id, expected to be unique across cloud region
          required: true
          type: string
          example: __IMAGE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/images:
    get:
      tags:
        - CloudInfrastructure
      summary: returns images
      description: returns images
      operationId: getCloudInfrastructureCloudRegionsCloudRegionImages
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/images"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: image-id
          in: query
          description:
          required: false
          type: string
        - name: image-name
          in: query
          description:
          required: false
          type: string
        - name: application
          in: query
          description:
          required: false
          type: string
        - name: application-vendor
          in: query
          description:
          required: false
          type: string
        - name: application-version
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitchRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: switch-name
          in: path
          description: DVS switch name
          required: true
          type: string
          example: __SWITCH-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitch.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitchRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: switch-name
          in: path
          description: DVS switch name
          required: true
          type: string
          example: __SWITCH-NAME__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches/dvs-switch/{switch-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns dvs-switch
      description: returns dvs-switch
      operationId: getCloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitch
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/dvs-switch"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: switch-name
          in: path
          description: DVS switch name
          required: true
          type: string
          example: __SWITCH-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing dvs-switch
      description: |
        Create or update an existing dvs-switch.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitch
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: switch-name
          in: path
          description: DVS switch name
          required: true
          type: string
          example: __SWITCH-NAME__
        - name: body
          in: body
          description: dvs-switch object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitch.json)
          required: true
          schema:
            $ref: "#/definitions/dvs-switch"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing dvs-switch
      description: |
        Update an existing dvs-switch
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitch
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: switch-name
          in: path
          description: DVS switch name
          required: true
          type: string
          example: __SWITCH-NAME__
        - name: body
          in: body
          description: dvs-switch object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/dvs-switch"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing dvs-switch
      description: delete an existing dvs-switch
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionDvsSwitchesDvsSwitch
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: switch-name
          in: path
          description: DVS switch name
          required: true
          type: string
          example: __SWITCH-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/dvs-switches:
    get:
      tags:
        - CloudInfrastructure
      summary: returns dvs-switches
      description: returns dvs-switches
      operationId: getCloudInfrastructureCloudRegionsCloudRegionDvsSwitches
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/dvs-switches"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: switch-name
          in: query
          description:
          required: false
          type: string
        - name: vcenter-url
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/oam-networks/oam-network/{network-uuid}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetworkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: network-uuid
          in: path
          description: UUID of the network. Unique across a cloud-region
          required: true
          type: string
          example: __NETWORK-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetwork.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetworkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: network-uuid
          in: path
          description: UUID of the network. Unique across a cloud-region
          required: true
          type: string
          example: __NETWORK-UUID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/oam-networks/oam-network/{network-uuid}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns oam-network
      description: returns oam-network
      operationId: getCloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetwork
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/oam-network"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: network-uuid
          in: path
          description: UUID of the network. Unique across a cloud-region
          required: true
          type: string
          example: __NETWORK-UUID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing oam-network
      description: |
        Create or update an existing oam-network.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetwork
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: network-uuid
          in: path
          description: UUID of the network. Unique across a cloud-region
          required: true
          type: string
          example: __NETWORK-UUID__
        - name: body
          in: body
          description: oam-network object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetwork.json)
          required: true
          schema:
            $ref: "#/definitions/oam-network"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing oam-network
      description: |
        Update an existing oam-network
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetwork
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: network-uuid
          in: path
          description: UUID of the network. Unique across a cloud-region
          required: true
          type: string
          example: __NETWORK-UUID__
        - name: body
          in: body
          description: oam-network object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/oam-network"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing oam-network
      description: delete an existing oam-network
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionOamNetworksOamNetwork
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: network-uuid
          in: path
          description: UUID of the network. Unique across a cloud-region
          required: true
          type: string
          example: __NETWORK-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/oam-networks:
    get:
      tags:
        - CloudInfrastructure
      summary: returns oam-networks
      description: returns oam-networks
      operationId: getCloudInfrastructureCloudRegionsCloudRegionOamNetworks
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/oam-networks"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: network-uuid
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
        - name: cvlan-tag
          in: query
          description:
          required: false
          type: integer
          format: int64
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/availability-zones/availability-zone/{availability-zone-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZoneRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone.  Unique across a cloud region
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZone.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZoneRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone.  Unique across a cloud region
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/availability-zones/availability-zone/{availability-zone-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns availability-zone
      description: returns availability-zone
      operationId: getCloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZone
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/availability-zone"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone.  Unique across a cloud region
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing availability-zone
      description: |
        Create or update an existing availability-zone.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZone
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone.  Unique across a cloud region
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: body
          in: body
          description: availability-zone object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZone.json)
          required: true
          schema:
            $ref: "#/definitions/availability-zone"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing availability-zone
      description: |
        Update an existing availability-zone
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZone
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone.  Unique across a cloud region
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: body
          in: body
          description: availability-zone object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/availability-zone"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing availability-zone
      description: delete an existing availability-zone
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionAvailabilityZonesAvailabilityZone
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: availability-zone-name
          in: path
          description: Name of the availability zone.  Unique across a cloud region
          required: true
          type: string
          example: __AVAILABILITY-ZONE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/availability-zones:
    get:
      tags:
        - CloudInfrastructure
      summary: returns availability-zones
      description: returns availability-zones
      operationId: getCloudInfrastructureCloudRegionsCloudRegionAvailabilityZones
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/availability-zones"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: availability-zone-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegion.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/vip-ipv4-address-list/{vip-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV4-ADDRESS__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/vip-ipv4-address-list/{vip-ipv4-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vip-ipv4-address-list
      description: returns vip-ipv4-address-list
      operationId: getCloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vip-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV4-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing vip-ipv4-address-list
      description: |
        Create or update an existing vip-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV4-ADDRESS__
        - name: body
          in: body
          description: vip-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/vip-ipv4-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing vip-ipv4-address-list
      description: |
        Update an existing vip-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV4-ADDRESS__
        - name: body
          in: body
          description: vip-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vip-ipv4-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing vip-ipv4-address-list
      description: delete an existing vip-ipv4-address-list
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionVipIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/vip-ipv6-address-list/{vip-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV6-ADDRESS__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/vip-ipv6-address-list/{vip-ipv6-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vip-ipv6-address-list
      description: returns vip-ipv6-address-list
      operationId: getCloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vip-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV6-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing vip-ipv6-address-list
      description: |
        Create or update an existing vip-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV6-ADDRESS__
        - name: body
          in: body
          description: vip-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/vip-ipv6-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing vip-ipv6-address-list
      description: |
        Update an existing vip-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV6-ADDRESS__
        - name: body
          in: body
          description: vip-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vip-ipv6-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing vip-ipv6-address-list
      description: delete an existing vip-ipv6-address-list
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionVipIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: vip-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __VIP-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapability.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}/hpa-feature-attributes/{hpa-attribute-key}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributesRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributes.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributesRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}/hpa-feature-attributes/{hpa-attribute-key}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns hpa-feature-attributes
      description: returns hpa-feature-attributes
      operationId: getCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/hpa-feature-attributes"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing hpa-feature-attributes
      description: |
        Create or update an existing hpa-feature-attributes.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: body
          in: body
          description: hpa-feature-attributes object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributes.json)
          required: true
          schema:
            $ref: "#/definitions/hpa-feature-attributes"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing hpa-feature-attributes
      description: |
        Update an existing hpa-feature-attributes
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: body
          in: body
          description: hpa-feature-attributes object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/hpa-feature-attributes"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing hpa-feature-attributes
      description: delete an existing hpa-feature-attributes
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapabilityHpaFeatureAttributes
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: hpa-attribute-key
          in: path
          description: name of the specific HPA attribute
          required: true
          type: string
          example: __HPA-ATTRIBUTE-KEY__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/hpa-capabilities/hpa-capability/{hpa-capability-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns hpa-capability
      description: returns hpa-capability
      operationId: getCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapability
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/hpa-capability"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing hpa-capability
      description: |
        Create or update an existing hpa-capability.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapability
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: body
          in: body
          description: hpa-capability object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapability.json)
          required: true
          schema:
            $ref: "#/definitions/hpa-capability"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing hpa-capability
      description: |
        Update an existing hpa-capability
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapability
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: body
          in: body
          description: hpa-capability object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/hpa-capability"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing hpa-capability
      description: delete an existing hpa-capability
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionHpaCapabilitiesHpaCapability
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: path
          description: UUID to uniquely identify a HPA capability
          required: true
          type: string
          example: __HPA-CAPABILITY-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/hpa-capabilities:
    get:
      tags:
        - CloudInfrastructure
      summary: returns hpa-capabilities
      description: returns hpa-capabilities
      operationId: getCloudInfrastructureCloudRegionsCloudRegionHpaCapabilities
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/hpa-capabilities"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: hpa-capability-id
          in: query
          description:
          required: false
          type: string
        - name: hpa-feature
          in: query
          description:
          required: false
          type: string
        - name: architecture
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns esr-system-info
      description: returns esr-system-info
      operationId: getCloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfo
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing esr-system-info
      description: |
        Create or update an existing esr-system-info.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/esr-system-info"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing esr-system-info
      description: |
        Update an existing esr-system-info
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-system-info"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing esr-system-info
      description: delete an existing esr-system-info
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}/esr-system-info-list:
    get:
      tags:
        - CloudInfrastructure
      summary: returns esr-system-info-list
      description: returns esr-system-info-list
      operationId: getCloudInfrastructureCloudRegionsCloudRegionEsrSystemInfoList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: esr-system-info-id
          in: query
          description:
          required: false
          type: string
        - name: system-name
          in: query
          description:
          required: false
          type: string
        - name: system-type
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/cloud-regions/cloud-region/{cloud-owner}/{cloud-region-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns cloud-region
      description: returns cloud-region
      operationId: getCloudInfrastructureCloudRegionsCloudRegion
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/cloud-region"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing cloud-region
      description: |
        Create or update an existing cloud-region.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureCloudRegionsCloudRegion
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: body
          in: body
          description: cloud-region object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureCloudRegionsCloudRegion.json)
          required: true
          schema:
            $ref: "#/definitions/cloud-region"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing cloud-region
      description: |
        Update an existing cloud-region
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureCloudRegionsCloudRegion
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: body
          in: body
          description: cloud-region object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/cloud-region"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing cloud-region
      description: delete an existing cloud-region
      operationId: deleteCloudInfrastructureCloudRegionsCloudRegion
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: path
          description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
          required: true
          type: string
          example: __CLOUD-OWNER__
        - name: cloud-region-id
          in: path
          description: Identifier used by the vendor for the region. Second part of composite key
          required: true
          type: string
          example: __CLOUD-REGION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/cloud-regions:
    get:
      tags:
        - CloudInfrastructure
      summary: returns cloud-regions
      description: returns cloud-regions
      operationId: getCloudInfrastructureCloudRegions
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/cloud-regions"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: cloud-owner
          in: query
          description:
          required: false
          type: string
        - name: cloud-region-id
          in: query
          description:
          required: false
          type: string
        - name: cloud-type
          in: query
          description:
          required: false
          type: string
        - name: owner-defined-type
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/network-profiles/network-profile/{nm-profile-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureNetworkProfilesNetworkProfileRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nm-profile-name
          in: path
          description: Unique name of network profile.
          required: true
          type: string
          example: __NM-PROFILE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureNetworkProfilesNetworkProfile.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureNetworkProfilesNetworkProfileRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nm-profile-name
          in: path
          description: Unique name of network profile.
          required: true
          type: string
          example: __NM-PROFILE-NAME__
  /cloud-infrastructure/network-profiles/network-profile/{nm-profile-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns network-profile
      description: returns network-profile
      operationId: getCloudInfrastructureNetworkProfilesNetworkProfile
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-profile"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nm-profile-name
          in: path
          description: Unique name of network profile.
          required: true
          type: string
          example: __NM-PROFILE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing network-profile
      description: |
        Create or update an existing network-profile.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureNetworkProfilesNetworkProfile
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nm-profile-name
          in: path
          description: Unique name of network profile.
          required: true
          type: string
          example: __NM-PROFILE-NAME__
        - name: body
          in: body
          description: network-profile object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureNetworkProfilesNetworkProfile.json)
          required: true
          schema:
            $ref: "#/definitions/network-profile"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing network-profile
      description: |
        Update an existing network-profile
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureNetworkProfilesNetworkProfile
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nm-profile-name
          in: path
          description: Unique name of network profile.
          required: true
          type: string
          example: __NM-PROFILE-NAME__
        - name: body
          in: body
          description: network-profile object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/network-profile"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing network-profile
      description: delete an existing network-profile
      operationId: deleteCloudInfrastructureNetworkProfilesNetworkProfile
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nm-profile-name
          in: path
          description: Unique name of network profile.
          required: true
          type: string
          example: __NM-PROFILE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/network-profiles:
    get:
      tags:
        - CloudInfrastructure
      summary: returns network-profiles
      description: returns network-profiles
      operationId: getCloudInfrastructureNetworkProfiles
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-profiles"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nm-profile-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserver.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/sriov-pfs/sriov-pf/{pf-pci-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/sriov-pfs/sriov-pf/{pf-pci-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-pf
      description: returns sriov-pf
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-pf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing sriov-pf
      description: |
        Create or update an existing sriov-pf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: sriov-pf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-pf"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing sriov-pf
      description: |
        Update an existing sriov-pf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: sriov-pf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-pf"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing sriov-pf
      description: delete an existing sriov-pf
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/sriov-pfs:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-pfs
      description: returns sriov-pfs
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceSriovPfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-pfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vlan
      description: returns vlan
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vlans
      description: returns vlans
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l-interface
      description: returns l-interface
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}/l-interfaces:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterfaceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces/p-interface/{interface-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns p-interface
      description: returns p-interface
      operationId: getCloudInfrastructurePserversPserverPInterfacesPInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/p-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing p-interface
      description: |
        Create or update an existing p-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverPInterfacesPInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: p-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverPInterfacesPInterface.json)
          required: true
          schema:
            $ref: "#/definitions/p-interface"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing p-interface
      description: |
        Update an existing p-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverPInterfacesPInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: p-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/p-interface"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing p-interface
      description: delete an existing p-interface
      operationId: deleteCloudInfrastructurePserversPserverPInterfacesPInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/p-interfaces:
    get:
      tags:
        - CloudInfrastructure
      summary: returns p-interfaces
      description: returns p-interfaces
      operationId: getCloudInfrastructurePserversPserverPInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/p-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vlan
      description: returns vlan
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - CloudInfrastructure
      summary: returns vlans
      description: returns vlans
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - CloudInfrastructure
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l-interface
      description: returns l-interface
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}/l-interfaces:
    get:
      tags:
        - CloudInfrastructure
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterfaceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces/lag-interface/{interface-name}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns lag-interface
      description: returns lag-interface
      operationId: getCloudInfrastructurePserversPserverLagInterfacesLagInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing lag-interface
      description: |
        Create or update an existing lag-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/lag-interface"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing lag-interface
      description: |
        Update an existing lag-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverLagInterfacesLagInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/lag-interface"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing lag-interface
      description: delete an existing lag-interface
      operationId: deleteCloudInfrastructurePserversPserverLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/lag-interfaces:
    get:
      tags:
        - CloudInfrastructure
      summary: returns lag-interfaces
      description: returns lag-interfaces
      operationId: getCloudInfrastructurePserversPserverLagInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: interface-role
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}/hpa-capacity/{hpa-capacity-key}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructurePserversPserverHpaCapacityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: hpa-capacity-key
          in: path
          description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
          required: true
          type: string
          example: __HPA-CAPACITY-KEY__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverHpaCapacity.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructurePserversPserverHpaCapacityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: hpa-capacity-key
          in: path
          description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
          required: true
          type: string
          example: __HPA-CAPACITY-KEY__
  /cloud-infrastructure/pservers/pserver/{hostname}/hpa-capacity/{hpa-capacity-key}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns hpa-capacity
      description: returns hpa-capacity
      operationId: getCloudInfrastructurePserversPserverHpaCapacity
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/hpa-capacity"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: hpa-capacity-key
          in: path
          description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
          required: true
          type: string
          example: __HPA-CAPACITY-KEY__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing hpa-capacity
      description: |
        Create or update an existing hpa-capacity.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserverHpaCapacity
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: hpa-capacity-key
          in: path
          description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
          required: true
          type: string
          example: __HPA-CAPACITY-KEY__
        - name: body
          in: body
          description: hpa-capacity object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserverHpaCapacity.json)
          required: true
          schema:
            $ref: "#/definitions/hpa-capacity"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing hpa-capacity
      description: |
        Update an existing hpa-capacity
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserverHpaCapacity
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: hpa-capacity-key
          in: path
          description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
          required: true
          type: string
          example: __HPA-CAPACITY-KEY__
        - name: body
          in: body
          description: hpa-capacity object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/hpa-capacity"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing hpa-capacity
      description: delete an existing hpa-capacity
      operationId: deleteCloudInfrastructurePserversPserverHpaCapacity
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: hpa-capacity-key
          in: path
          description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
          required: true
          type: string
          example: __HPA-CAPACITY-KEY__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers/pserver/{hostname}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns pserver
      description: returns pserver
      operationId: getCloudInfrastructurePserversPserver
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/pserver"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing pserver
      description: |
        Create or update an existing pserver.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructurePserversPserver
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: body
          in: body
          description: pserver object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructurePserversPserver.json)
          required: true
          schema:
            $ref: "#/definitions/pserver"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing pserver
      description: |
        Update an existing pserver
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructurePserversPserver
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: body
          in: body
          description: pserver object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/pserver"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing pserver
      description: delete an existing pserver
      operationId: deleteCloudInfrastructurePserversPserver
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: path
          description: Value from executing hostname on the compute node.
          required: true
          type: string
          example: __HOSTNAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/pservers:
    get:
      tags:
        - CloudInfrastructure
      summary: returns pservers
      description: returns pservers
      operationId: getCloudInfrastructurePservers
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/pservers"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: hostname
          in: query
          description:
          required: false
          type: string
        - name: inv-status
          in: query
          description:
          required: false
          type: string
        - name: pserver-id
          in: query
          description:
          required: false
          type: string
        - name: in-maint
          in: query
          description:
          required: false
          type: boolean
        - name: pserver-name2
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureVirtualDataCentersVirtualDataCenterRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vdc-id
          in: path
          description: Unique ID of the vdc
          required: true
          type: string
          example: __VDC-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureVirtualDataCentersVirtualDataCenter.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureVirtualDataCentersVirtualDataCenterRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vdc-id
          in: path
          description: Unique ID of the vdc
          required: true
          type: string
          example: __VDC-ID__
  /cloud-infrastructure/virtual-data-centers/virtual-data-center/{vdc-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns virtual-data-center
      description: returns virtual-data-center
      operationId: getCloudInfrastructureVirtualDataCentersVirtualDataCenter
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/virtual-data-center"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vdc-id
          in: path
          description: Unique ID of the vdc
          required: true
          type: string
          example: __VDC-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing virtual-data-center
      description: |
        Create or update an existing virtual-data-center.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureVirtualDataCentersVirtualDataCenter
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vdc-id
          in: path
          description: Unique ID of the vdc
          required: true
          type: string
          example: __VDC-ID__
        - name: body
          in: body
          description: virtual-data-center object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureVirtualDataCentersVirtualDataCenter.json)
          required: true
          schema:
            $ref: "#/definitions/virtual-data-center"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing virtual-data-center
      description: |
        Update an existing virtual-data-center
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureVirtualDataCentersVirtualDataCenter
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vdc-id
          in: path
          description: Unique ID of the vdc
          required: true
          type: string
          example: __VDC-ID__
        - name: body
          in: body
          description: virtual-data-center object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/virtual-data-center"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing virtual-data-center
      description: delete an existing virtual-data-center
      operationId: deleteCloudInfrastructureVirtualDataCentersVirtualDataCenter
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vdc-id
          in: path
          description: Unique ID of the vdc
          required: true
          type: string
          example: __VDC-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/virtual-data-centers:
    get:
      tags:
        - CloudInfrastructure
      summary: returns virtual-data-centers
      description: returns virtual-data-centers
      operationId: getCloudInfrastructureVirtualDataCenters
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/virtual-data-centers"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vdc-id
          in: query
          description:
          required: false
          type: string
        - name: vdc-name
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/operational-environments/operational-environment/{operational-environment-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureOperationalEnvironmentsOperationalEnvironmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: operational-environment-id
          in: path
          description: UUID of an operational environment
          required: true
          type: string
          example: __OPERATIONAL-ENVIRONMENT-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureOperationalEnvironmentsOperationalEnvironment.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureOperationalEnvironmentsOperationalEnvironmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: operational-environment-id
          in: path
          description: UUID of an operational environment
          required: true
          type: string
          example: __OPERATIONAL-ENVIRONMENT-ID__
  /cloud-infrastructure/operational-environments/operational-environment/{operational-environment-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns operational-environment
      description: returns operational-environment
      operationId: getCloudInfrastructureOperationalEnvironmentsOperationalEnvironment
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/operational-environment"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: operational-environment-id
          in: path
          description: UUID of an operational environment
          required: true
          type: string
          example: __OPERATIONAL-ENVIRONMENT-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing operational-environment
      description: |
        Create or update an existing operational-environment.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureOperationalEnvironmentsOperationalEnvironment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: operational-environment-id
          in: path
          description: UUID of an operational environment
          required: true
          type: string
          example: __OPERATIONAL-ENVIRONMENT-ID__
        - name: body
          in: body
          description: operational-environment object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureOperationalEnvironmentsOperationalEnvironment.json)
          required: true
          schema:
            $ref: "#/definitions/operational-environment"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing operational-environment
      description: |
        Update an existing operational-environment
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureOperationalEnvironmentsOperationalEnvironment
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: operational-environment-id
          in: path
          description: UUID of an operational environment
          required: true
          type: string
          example: __OPERATIONAL-ENVIRONMENT-ID__
        - name: body
          in: body
          description: operational-environment object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/operational-environment"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing operational-environment
      description: delete an existing operational-environment
      operationId: deleteCloudInfrastructureOperationalEnvironmentsOperationalEnvironment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: operational-environment-id
          in: path
          description: UUID of an operational environment
          required: true
          type: string
          example: __OPERATIONAL-ENVIRONMENT-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/operational-environments:
    get:
      tags:
        - CloudInfrastructure
      summary: returns operational-environments
      description: returns operational-environments
      operationId: getCloudInfrastructureOperationalEnvironments
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/operational-environments"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: operational-environment-id
          in: query
          description:
          required: false
          type: string
  /cloud-infrastructure/network-technologies/network-technology/{network-technology-id}/relationship-list/relationship:
    put:
      tags:
        - CloudInfrastructure
      summary: see node definition for valid relationships
      operationId: createOrUpdateCloudInfrastructureNetworkTechnologiesNetworkTechnologyRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-technology-id
          in: path
          description: Unique identifier of the network-technology object (UUID)
          required: true
          type: string
          example: __NETWORK-TECHNOLOGY-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureNetworkTechnologiesNetworkTechnology.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCloudInfrastructureNetworkTechnologiesNetworkTechnologyRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-technology-id
          in: path
          description: Unique identifier of the network-technology object (UUID)
          required: true
          type: string
          example: __NETWORK-TECHNOLOGY-ID__
  /cloud-infrastructure/network-technologies/network-technology/{network-technology-id}:
    get:
      tags:
        - CloudInfrastructure
      summary: returns network-technology
      description: returns network-technology
      operationId: getCloudInfrastructureNetworkTechnologiesNetworkTechnology
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-technology"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-technology-id
          in: path
          description: Unique identifier of the network-technology object (UUID)
          required: true
          type: string
          example: __NETWORK-TECHNOLOGY-ID__
    put:
      tags:
        - CloudInfrastructure
      summary: create or update an existing network-technology
      description: |
        Create or update an existing network-technology.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCloudInfrastructureNetworkTechnologiesNetworkTechnology
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-technology-id
          in: path
          description: Unique identifier of the network-technology object (UUID)
          required: true
          type: string
          example: __NETWORK-TECHNOLOGY-ID__
        - name: body
          in: body
          description: network-technology object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CloudInfrastructureNetworkTechnologiesNetworkTechnology.json)
          required: true
          schema:
            $ref: "#/definitions/network-technology"
    patch:
      tags:
        - CloudInfrastructure
      summary: update an existing network-technology
      description: |
        Update an existing network-technology
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCloudInfrastructureNetworkTechnologiesNetworkTechnology
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-technology-id
          in: path
          description: Unique identifier of the network-technology object (UUID)
          required: true
          type: string
          example: __NETWORK-TECHNOLOGY-ID__
        - name: body
          in: body
          description: network-technology object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/network-technology"
    delete:
      tags:
        - CloudInfrastructure
      summary: delete an existing network-technology
      description: delete an existing network-technology
      operationId: deleteCloudInfrastructureNetworkTechnologiesNetworkTechnology
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-technology-id
          in: path
          description: Unique identifier of the network-technology object (UUID)
          required: true
          type: string
          example: __NETWORK-TECHNOLOGY-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /cloud-infrastructure/network-technologies:
    get:
      tags:
        - CloudInfrastructure
      summary: returns network-technologies
      description: returns network-technologies
      operationId: getCloudInfrastructureNetworkTechnologies
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-technologies"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
  /external-system/esr-ems-list/esr-ems/{ems-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
  /external-system/esr-ems-list/esr-ems/{ems-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info
      description: returns esr-system-info
      operationId: getExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfo
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-system-info
      description: |
        Create or update an existing esr-system-info.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/esr-system-info"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-system-info
      description: |
        Update an existing esr-system-info
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-system-info"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-system-info
      description: delete an existing esr-system-info
      operationId: deleteExternalSystemEsrEmsListEsrEmsEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-ems-list/esr-ems/{ems-id}/esr-system-info-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info-list
      description: returns esr-system-info-list
      operationId: getExternalSystemEsrEmsListEsrEmsEsrSystemInfoList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: esr-system-info-id
          in: query
          description:
          required: false
          type: string
        - name: system-name
          in: query
          description:
          required: false
          type: string
        - name: system-type
          in: query
          description:
          required: false
          type: string
  /external-system/esr-ems-list/esr-ems/{ems-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrEmsListEsrEmsRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrEmsListEsrEms.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrEmsListEsrEmsRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
  /external-system/esr-ems-list/esr-ems/{ems-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-ems
      description: returns esr-ems
      operationId: getExternalSystemEsrEmsListEsrEms
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-ems"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-ems
      description: |
        Create or update an existing esr-ems.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrEmsListEsrEms
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: body
          in: body
          description: esr-ems object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrEmsListEsrEms.json)
          required: true
          schema:
            $ref: "#/definitions/esr-ems"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-ems
      description: |
        Update an existing esr-ems
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrEmsListEsrEms
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: body
          in: body
          description: esr-ems object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-ems"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-ems
      description: delete an existing esr-ems
      operationId: deleteExternalSystemEsrEmsListEsrEms
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: path
          description: Unique ID of EMS.
          required: true
          type: string
          example: __EMS-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-ems-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-ems-list
      description: returns esr-ems-list
      operationId: getExternalSystemEsrEmsList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-ems-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ems-id
          in: query
          description:
          required: false
          type: string
  /external-system/esr-vnfm-list/esr-vnfm/{vnfm-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
  /external-system/esr-vnfm-list/esr-vnfm/{vnfm-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info
      description: returns esr-system-info
      operationId: getExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfo
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-system-info
      description: |
        Create or update an existing esr-system-info.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/esr-system-info"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-system-info
      description: |
        Update an existing esr-system-info
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-system-info"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-system-info
      description: delete an existing esr-system-info
      operationId: deleteExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-vnfm-list/esr-vnfm/{vnfm-id}/esr-system-info-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info-list
      description: returns esr-system-info-list
      operationId: getExternalSystemEsrVnfmListEsrVnfmEsrSystemInfoList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: esr-system-info-id
          in: query
          description:
          required: false
          type: string
        - name: system-name
          in: query
          description:
          required: false
          type: string
        - name: system-type
          in: query
          description:
          required: false
          type: string
  /external-system/esr-vnfm-list/esr-vnfm/{vnfm-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrVnfmListEsrVnfmRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrVnfmListEsrVnfm.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrVnfmListEsrVnfmRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
  /external-system/esr-vnfm-list/esr-vnfm/{vnfm-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-vnfm
      description: returns esr-vnfm
      operationId: getExternalSystemEsrVnfmListEsrVnfm
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-vnfm"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-vnfm
      description: |
        Create or update an existing esr-vnfm.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrVnfmListEsrVnfm
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: body
          in: body
          description: esr-vnfm object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrVnfmListEsrVnfm.json)
          required: true
          schema:
            $ref: "#/definitions/esr-vnfm"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-vnfm
      description: |
        Update an existing esr-vnfm
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrVnfmListEsrVnfm
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: body
          in: body
          description: esr-vnfm object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-vnfm"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-vnfm
      description: delete an existing esr-vnfm
      operationId: deleteExternalSystemEsrVnfmListEsrVnfm
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: path
          description: Unique ID of VNFM.
          required: true
          type: string
          example: __VNFM-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-vnfm-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-vnfm-list
      description: returns esr-vnfm-list
      operationId: getExternalSystemEsrVnfmList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-vnfm-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfm-id
          in: query
          description:
          required: false
          type: string
  /external-system/esr-nfvo-list/esr-nfvo/{nfvo-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
  /external-system/esr-nfvo-list/esr-nfvo/{nfvo-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info
      description: returns esr-system-info
      operationId: getExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfo
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-system-info
      description: |
        Create or update an existing esr-system-info.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/esr-system-info"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-system-info
      description: |
        Update an existing esr-system-info
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-system-info"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-system-info
      description: delete an existing esr-system-info
      operationId: deleteExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-nfvo-list/esr-nfvo/{nfvo-id}/esr-system-info-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info-list
      description: returns esr-system-info-list
      operationId: getExternalSystemEsrNfvoListEsrNfvoEsrSystemInfoList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: esr-system-info-id
          in: query
          description:
          required: false
          type: string
        - name: system-name
          in: query
          description:
          required: false
          type: string
        - name: system-type
          in: query
          description:
          required: false
          type: string
  /external-system/esr-nfvo-list/esr-nfvo/{nfvo-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrNfvoListEsrNfvoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrNfvoListEsrNfvo.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrNfvoListEsrNfvoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
  /external-system/esr-nfvo-list/esr-nfvo/{nfvo-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-nfvo
      description: returns esr-nfvo
      operationId: getExternalSystemEsrNfvoListEsrNfvo
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-nfvo"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-nfvo
      description: |
        Create or update an existing esr-nfvo.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrNfvoListEsrNfvo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: body
          in: body
          description: esr-nfvo object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrNfvoListEsrNfvo.json)
          required: true
          schema:
            $ref: "#/definitions/esr-nfvo"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-nfvo
      description: |
        Update an existing esr-nfvo
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrNfvoListEsrNfvo
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: body
          in: body
          description: esr-nfvo object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-nfvo"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-nfvo
      description: delete an existing esr-nfvo
      operationId: deleteExternalSystemEsrNfvoListEsrNfvo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: path
          description: Unique ID of nfvo.
          required: true
          type: string
          example: __NFVO-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-nfvo-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-nfvo-list
      description: returns esr-nfvo-list
      operationId: getExternalSystemEsrNfvoList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-nfvo-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: nfvo-id
          in: query
          description:
          required: false
          type: string
  /external-system/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
  /external-system/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}/esr-system-info-list/esr-system-info/{esr-system-info-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info
      description: returns esr-system-info
      operationId: getExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfo
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-system-info
      description: |
        Create or update an existing esr-system-info.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/esr-system-info"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-system-info
      description: |
        Update an existing esr-system-info
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-system-info"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-system-info
      description: delete an existing esr-system-info
      operationId: deleteExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoListEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}/esr-system-info-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-system-info-list
      description: returns esr-system-info-list
      operationId: getExternalSystemEsrThirdpartySdncListEsrThirdpartySdncEsrSystemInfoList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: esr-system-info-id
          in: query
          description:
          required: false
          type: string
        - name: system-name
          in: query
          description:
          required: false
          type: string
        - name: system-type
          in: query
          description:
          required: false
          type: string
  /external-system/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}/relationship-list/relationship:
    put:
      tags:
        - ExternalSystem
      summary: see node definition for valid relationships
      operationId: createOrUpdateExternalSystemEsrThirdpartySdncListEsrThirdpartySdncRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrThirdpartySdncListEsrThirdpartySdnc.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteExternalSystemEsrThirdpartySdncListEsrThirdpartySdncRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
  /external-system/esr-thirdparty-sdnc-list/esr-thirdparty-sdnc/{thirdparty-sdnc-id}:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-thirdparty-sdnc
      description: returns esr-thirdparty-sdnc
      operationId: getExternalSystemEsrThirdpartySdncListEsrThirdpartySdnc
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-thirdparty-sdnc"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
    put:
      tags:
        - ExternalSystem
      summary: create or update an existing esr-thirdparty-sdnc
      description: |
        Create or update an existing esr-thirdparty-sdnc.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateExternalSystemEsrThirdpartySdncListEsrThirdpartySdnc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: body
          in: body
          description: esr-thirdparty-sdnc object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ExternalSystemEsrThirdpartySdncListEsrThirdpartySdnc.json)
          required: true
          schema:
            $ref: "#/definitions/esr-thirdparty-sdnc"
    patch:
      tags:
        - ExternalSystem
      summary: update an existing esr-thirdparty-sdnc
      description: |
        Update an existing esr-thirdparty-sdnc
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateExternalSystemEsrThirdpartySdncListEsrThirdpartySdnc
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: body
          in: body
          description: esr-thirdparty-sdnc object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-thirdparty-sdnc"
    delete:
      tags:
        - ExternalSystem
      summary: delete an existing esr-thirdparty-sdnc
      description: delete an existing esr-thirdparty-sdnc
      operationId: deleteExternalSystemEsrThirdpartySdncListEsrThirdpartySdnc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: thirdparty-sdnc-id
          in: path
          description: Unique ID of SDNC.
          required: true
          type: string
          example: __THIRDPARTY-SDNC-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /external-system/esr-thirdparty-sdnc-list:
    get:
      tags:
        - ExternalSystem
      summary: returns esr-thirdparty-sdnc-list
      description: returns esr-thirdparty-sdnc-list
      operationId: getExternalSystemEsrThirdpartySdncList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-thirdparty-sdnc-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
  /business/connectors/connector/{resource-instance-id}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessConnectorsConnectorRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessConnectorsConnector.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessConnectorsConnectorRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
  /business/connectors/connector/{resource-instance-id}/metadata/metadatum/{metaname}:
    get:
      tags:
        - Business
      summary: returns metadatum
      description: returns metadatum
      operationId: getBusinessConnectorsConnectorMetadataMetadatum
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadatum"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
    put:
      tags:
        - Business
      summary: create or update an existing metadatum
      description: |
        Create or update an existing metadatum.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessConnectorsConnectorMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessConnectorsConnectorMetadataMetadatum.json)
          required: true
          schema:
            $ref: "#/definitions/metadatum"
    patch:
      tags:
        - Business
      summary: update an existing metadatum
      description: |
        Update an existing metadatum
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessConnectorsConnectorMetadataMetadatum
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/metadatum"
    delete:
      tags:
        - Business
      summary: delete an existing metadatum
      description: delete an existing metadatum
      operationId: deleteBusinessConnectorsConnectorMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/connectors/connector/{resource-instance-id}/metadata:
    get:
      tags:
        - Business
      summary: returns metadata
      description: returns metadata
      operationId: getBusinessConnectorsConnectorMetadata
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadata"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: metaname
          in: query
          description:
          required: false
          type: string
  /business/connectors/connector/{resource-instance-id}:
    get:
      tags:
        - Business
      summary: returns connector
      description: returns connector
      operationId: getBusinessConnectorsConnector
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/connector"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
    put:
      tags:
        - Business
      summary: create or update an existing connector
      description: |
        Create or update an existing connector.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessConnectorsConnector
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: body
          in: body
          description: connector object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessConnectorsConnector.json)
          required: true
          schema:
            $ref: "#/definitions/connector"
    patch:
      tags:
        - Business
      summary: update an existing connector
      description: |
        Update an existing connector
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessConnectorsConnector
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: body
          in: body
          description: connector object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/connector"
    delete:
      tags:
        - Business
      summary: delete an existing connector
      description: delete an existing connector
      operationId: deleteBusinessConnectorsConnector
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: path
          description: Unique id of resource instance.
          required: true
          type: string
          example: __RESOURCE-INSTANCE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/connectors:
    get:
      tags:
        - Business
      summary: returns connectors
      description: returns connectors
      operationId: getBusinessConnectors
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/connectors"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: resource-instance-id
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-version
          in: query
          description:
          required: false
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstance.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/metadata/metadatum/{metaname}:
    get:
      tags:
        - Business
      summary: returns metadatum
      description: returns metadatum
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceMetadataMetadatum
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadatum"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
    put:
      tags:
        - Business
      summary: create or update an existing metadatum
      description: |
        Create or update an existing metadatum.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceMetadataMetadatum.json)
          required: true
          schema:
            $ref: "#/definitions/metadatum"
    patch:
      tags:
        - Business
      summary: update an existing metadatum
      description: |
        Update an existing metadatum
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceMetadataMetadatum
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/metadatum"
    delete:
      tags:
        - Business
      summary: delete an existing metadatum
      description: delete an existing metadatum
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/metadata:
    get:
      tags:
        - Business
      summary: returns metadata
      description: returns metadata
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceMetadata
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadata"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: metaname
          in: query
          description:
          required: false
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}/tunnel-xconnects/tunnel-xconnect/{id}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnectRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnect.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnectRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}/tunnel-xconnects/tunnel-xconnect/{id}:
    get:
      tags:
        - Business
      summary: returns tunnel-xconnect
      description: returns tunnel-xconnect
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnect
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/tunnel-xconnect"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
    put:
      tags:
        - Business
      summary: create or update an existing tunnel-xconnect
      description: |
        Create or update an existing tunnel-xconnect.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnect
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: tunnel-xconnect object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnect.json)
          required: true
          schema:
            $ref: "#/definitions/tunnel-xconnect"
    patch:
      tags:
        - Business
      summary: update an existing tunnel-xconnect
      description: |
        Update an existing tunnel-xconnect
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnect
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: tunnel-xconnect object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/tunnel-xconnect"
    delete:
      tags:
        - Business
      summary: delete an existing tunnel-xconnect
      description: delete an existing tunnel-xconnect
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnectsTunnelXconnect
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}/tunnel-xconnects:
    get:
      tags:
        - Business
      summary: returns tunnel-xconnects
      description: returns tunnel-xconnects
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceTunnelXconnects
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/tunnel-xconnects"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: id
          in: query
          description:
          required: false
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResource.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResourceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources/allotted-resource/{id}:
    get:
      tags:
        - Business
      summary: returns allotted-resource
      description: returns allotted-resource
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResource
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/allotted-resource"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
    put:
      tags:
        - Business
      summary: create or update an existing allotted-resource
      description: |
        Create or update an existing allotted-resource.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResource
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: allotted-resource object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResource.json)
          required: true
          schema:
            $ref: "#/definitions/allotted-resource"
    patch:
      tags:
        - Business
      summary: update an existing allotted-resource
      description: |
        Update an existing allotted-resource
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResource
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: allotted-resource object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/allotted-resource"
    delete:
      tags:
        - Business
      summary: delete an existing allotted-resource
      description: delete an existing allotted-resource
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResourcesAllottedResource
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: path
          description: Allotted Resource id UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/allotted-resources:
    get:
      tags:
        - Business
      summary: returns allotted-resources
      description: returns allotted-resources
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstanceAllottedResources
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/allotted-resources"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: id
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: type
          in: query
          description:
          required: false
          type: string
        - name: role
          in: query
          description:
          required: false
          type: string
        - name: allotted-resource-name
          in: query
          description:
          required: false
          type: string
        - name: access-provider-id
          in: query
          description:
          required: false
          type: string
        - name: access-client-id
          in: query
          description:
          required: false
          type: string
        - name: access-topology-id
          in: query
          description:
          required: false
          type: string
        - name: access-node-id
          in: query
          description:
          required: false
          type: string
        - name: access-ltp-id
          in: query
          description:
          required: false
          type: string
        - name: vpn-name
          in: query
          description:
          required: false
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}:
    get:
      tags:
        - Business
      summary: returns service-instance
      description: returns service-instance
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstance
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/service-instance"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
    put:
      tags:
        - Business
      summary: create or update an existing service-instance
      description: |
        Create or update an existing service-instance.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstance
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: body
          in: body
          description: service-instance object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstance.json)
          required: true
          schema:
            $ref: "#/definitions/service-instance"
    patch:
      tags:
        - Business
      summary: update an existing service-instance
      description: |
        Update an existing service-instance
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstance
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: body
          in: body
          description: service-instance object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/service-instance"
    delete:
      tags:
        - Business
      summary: delete an existing service-instance
      description: delete an existing service-instance
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstancesServiceInstance
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: path
          description: Uniquely identifies this instance of a service
          required: true
          type: string
          example: __SERVICE-INSTANCE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances:
    get:
      tags:
        - Business
      summary: returns service-instances
      description: returns service-instances
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionServiceInstances
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/service-instances"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: service-instance-id
          in: query
          description:
          required: false
          type: string
        - name: service-instance-name
          in: query
          description:
          required: false
          type: string
        - name: environment-context
          in: query
          description:
          required: false
          type: string
        - name: workload-context
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-version
          in: query
          description:
          required: false
          type: string
        - name: service-instance-location-id
          in: query
          description:
          required: false
          type: string
        - name: orchestration-status
          in: query
          description:
          required: false
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscription.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscriptionRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
  /business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}:
    get:
      tags:
        - Business
      summary: returns service-subscription
      description: returns service-subscription
      operationId: getBusinessCustomersCustomerServiceSubscriptionsServiceSubscription
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/service-subscription"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
    put:
      tags:
        - Business
      summary: create or update an existing service-subscription
      description: |
        Create or update an existing service-subscription.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscription
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: body
          in: body
          description: service-subscription object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomerServiceSubscriptionsServiceSubscription.json)
          required: true
          schema:
            $ref: "#/definitions/service-subscription"
    patch:
      tags:
        - Business
      summary: update an existing service-subscription
      description: |
        Update an existing service-subscription
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessCustomersCustomerServiceSubscriptionsServiceSubscription
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: body
          in: body
          description: service-subscription object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/service-subscription"
    delete:
      tags:
        - Business
      summary: delete an existing service-subscription
      description: delete an existing service-subscription
      operationId: deleteBusinessCustomersCustomerServiceSubscriptionsServiceSubscription
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: path
          description: Value defined by orchestration to identify this service across ONAP.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/customers/customer/{global-customer-id}/service-subscriptions:
    get:
      tags:
        - Business
      summary: returns service-subscriptions
      description: returns service-subscriptions
      operationId: getBusinessCustomersCustomerServiceSubscriptions
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/service-subscriptions"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: service-type
          in: query
          description:
          required: false
          type: string
  /business/customers/customer/{global-customer-id}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessCustomersCustomerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomer.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessCustomersCustomerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
  /business/customers/customer/{global-customer-id}:
    get:
      tags:
        - Business
      summary: returns customer
      description: returns customer
      operationId: getBusinessCustomersCustomer
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/customer"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
    put:
      tags:
        - Business
      summary: create or update an existing customer
      description: |
        Create or update an existing customer.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessCustomersCustomer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: body
          in: body
          description: customer object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessCustomersCustomer.json)
          required: true
          schema:
            $ref: "#/definitions/customer"
    patch:
      tags:
        - Business
      summary: update an existing customer
      description: |
        Update an existing customer
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessCustomersCustomer
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: body
          in: body
          description: customer object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/customer"
    delete:
      tags:
        - Business
      summary: delete an existing customer
      description: delete an existing customer
      operationId: deleteBusinessCustomersCustomer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: path
          description: Global customer id used across ONAP to uniquely identify customer.
          required: true
          type: string
          example: __GLOBAL-CUSTOMER-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/customers:
    get:
      tags:
        - Business
      summary: returns customers
      description: returns customers
      operationId: getBusinessCustomers
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/customers"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: global-customer-id
          in: query
          description:
          required: false
          type: string
        - name: subscriber-name
          in: query
          description:
          required: false
          type: string
        - name: subscriber-type
          in: query
          description:
          required: false
          type: string
  /business/lines-of-business/line-of-business/{line-of-business-name}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessLinesOfBusinessLineOfBusinessRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: line-of-business-name
          in: path
          description: Name of the line-of-business (product)
          required: true
          type: string
          example: __LINE-OF-BUSINESS-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessLinesOfBusinessLineOfBusiness.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessLinesOfBusinessLineOfBusinessRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: line-of-business-name
          in: path
          description: Name of the line-of-business (product)
          required: true
          type: string
          example: __LINE-OF-BUSINESS-NAME__
  /business/lines-of-business/line-of-business/{line-of-business-name}:
    get:
      tags:
        - Business
      summary: returns line-of-business
      description: returns line-of-business
      operationId: getBusinessLinesOfBusinessLineOfBusiness
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/line-of-business"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: line-of-business-name
          in: path
          description: Name of the line-of-business (product)
          required: true
          type: string
          example: __LINE-OF-BUSINESS-NAME__
    put:
      tags:
        - Business
      summary: create or update an existing line-of-business
      description: |
        Create or update an existing line-of-business.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessLinesOfBusinessLineOfBusiness
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: line-of-business-name
          in: path
          description: Name of the line-of-business (product)
          required: true
          type: string
          example: __LINE-OF-BUSINESS-NAME__
        - name: body
          in: body
          description: line-of-business object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessLinesOfBusinessLineOfBusiness.json)
          required: true
          schema:
            $ref: "#/definitions/line-of-business"
    patch:
      tags:
        - Business
      summary: update an existing line-of-business
      description: |
        Update an existing line-of-business
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessLinesOfBusinessLineOfBusiness
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: line-of-business-name
          in: path
          description: Name of the line-of-business (product)
          required: true
          type: string
          example: __LINE-OF-BUSINESS-NAME__
        - name: body
          in: body
          description: line-of-business object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/line-of-business"
    delete:
      tags:
        - Business
      summary: delete an existing line-of-business
      description: delete an existing line-of-business
      operationId: deleteBusinessLinesOfBusinessLineOfBusiness
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: line-of-business-name
          in: path
          description: Name of the line-of-business (product)
          required: true
          type: string
          example: __LINE-OF-BUSINESS-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/lines-of-business:
    get:
      tags:
        - Business
      summary: returns lines-of-business
      description: returns lines-of-business
      operationId: getBusinessLinesOfBusiness
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lines-of-business"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: line-of-business-name
          in: query
          description:
          required: false
          type: string
  /business/owning-entities/owning-entity/{owning-entity-id}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessOwningEntitiesOwningEntityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: owning-entity-id
          in: path
          description: UUID of an owning entity
          required: true
          type: string
          example: __OWNING-ENTITY-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessOwningEntitiesOwningEntity.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessOwningEntitiesOwningEntityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: owning-entity-id
          in: path
          description: UUID of an owning entity
          required: true
          type: string
          example: __OWNING-ENTITY-ID__
  /business/owning-entities/owning-entity/{owning-entity-id}:
    get:
      tags:
        - Business
      summary: returns owning-entity
      description: returns owning-entity
      operationId: getBusinessOwningEntitiesOwningEntity
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/owning-entity"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: owning-entity-id
          in: path
          description: UUID of an owning entity
          required: true
          type: string
          example: __OWNING-ENTITY-ID__
    put:
      tags:
        - Business
      summary: create or update an existing owning-entity
      description: |
        Create or update an existing owning-entity.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessOwningEntitiesOwningEntity
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: owning-entity-id
          in: path
          description: UUID of an owning entity
          required: true
          type: string
          example: __OWNING-ENTITY-ID__
        - name: body
          in: body
          description: owning-entity object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessOwningEntitiesOwningEntity.json)
          required: true
          schema:
            $ref: "#/definitions/owning-entity"
    patch:
      tags:
        - Business
      summary: update an existing owning-entity
      description: |
        Update an existing owning-entity
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessOwningEntitiesOwningEntity
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: owning-entity-id
          in: path
          description: UUID of an owning entity
          required: true
          type: string
          example: __OWNING-ENTITY-ID__
        - name: body
          in: body
          description: owning-entity object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/owning-entity"
    delete:
      tags:
        - Business
      summary: delete an existing owning-entity
      description: delete an existing owning-entity
      operationId: deleteBusinessOwningEntitiesOwningEntity
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: owning-entity-id
          in: path
          description: UUID of an owning entity
          required: true
          type: string
          example: __OWNING-ENTITY-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/owning-entities:
    get:
      tags:
        - Business
      summary: returns owning-entities
      description: returns owning-entities
      operationId: getBusinessOwningEntities
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/owning-entities"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: owning-entity-id
          in: query
          description:
          required: false
          type: string
        - name: owning-entity-name
          in: query
          description:
          required: false
          type: string
  /business/platforms/platform/{platform-name}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessPlatformsPlatformRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: platform-name
          in: path
          description: Name of the platform
          required: true
          type: string
          example: __PLATFORM-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessPlatformsPlatform.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessPlatformsPlatformRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: platform-name
          in: path
          description: Name of the platform
          required: true
          type: string
          example: __PLATFORM-NAME__
  /business/platforms/platform/{platform-name}:
    get:
      tags:
        - Business
      summary: returns platform
      description: returns platform
      operationId: getBusinessPlatformsPlatform
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/platform"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: platform-name
          in: path
          description: Name of the platform
          required: true
          type: string
          example: __PLATFORM-NAME__
    put:
      tags:
        - Business
      summary: create or update an existing platform
      description: |
        Create or update an existing platform.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessPlatformsPlatform
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: platform-name
          in: path
          description: Name of the platform
          required: true
          type: string
          example: __PLATFORM-NAME__
        - name: body
          in: body
          description: platform object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessPlatformsPlatform.json)
          required: true
          schema:
            $ref: "#/definitions/platform"
    patch:
      tags:
        - Business
      summary: update an existing platform
      description: |
        Update an existing platform
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessPlatformsPlatform
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: platform-name
          in: path
          description: Name of the platform
          required: true
          type: string
          example: __PLATFORM-NAME__
        - name: body
          in: body
          description: platform object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/platform"
    delete:
      tags:
        - Business
      summary: delete an existing platform
      description: delete an existing platform
      operationId: deleteBusinessPlatformsPlatform
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: platform-name
          in: path
          description: Name of the platform
          required: true
          type: string
          example: __PLATFORM-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/platforms:
    get:
      tags:
        - Business
      summary: returns platforms
      description: returns platforms
      operationId: getBusinessPlatforms
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/platforms"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: platform-name
          in: query
          description:
          required: false
          type: string
  /business/projects/project/{project-name}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessProjectsProjectRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: project-name
          in: path
          description: Name of the project deploying a service
          required: true
          type: string
          example: __PROJECT-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessProjectsProject.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessProjectsProjectRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: project-name
          in: path
          description: Name of the project deploying a service
          required: true
          type: string
          example: __PROJECT-NAME__
  /business/projects/project/{project-name}:
    get:
      tags:
        - Business
      summary: returns project
      description: returns project
      operationId: getBusinessProjectsProject
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/project"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: project-name
          in: path
          description: Name of the project deploying a service
          required: true
          type: string
          example: __PROJECT-NAME__
    put:
      tags:
        - Business
      summary: create or update an existing project
      description: |
        Create or update an existing project.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessProjectsProject
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: project-name
          in: path
          description: Name of the project deploying a service
          required: true
          type: string
          example: __PROJECT-NAME__
        - name: body
          in: body
          description: project object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessProjectsProject.json)
          required: true
          schema:
            $ref: "#/definitions/project"
    patch:
      tags:
        - Business
      summary: update an existing project
      description: |
        Update an existing project
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessProjectsProject
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: project-name
          in: path
          description: Name of the project deploying a service
          required: true
          type: string
          example: __PROJECT-NAME__
        - name: body
          in: body
          description: project object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/project"
    delete:
      tags:
        - Business
      summary: delete an existing project
      description: delete an existing project
      operationId: deleteBusinessProjectsProject
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: project-name
          in: path
          description: Name of the project deploying a service
          required: true
          type: string
          example: __PROJECT-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/projects:
    get:
      tags:
        - Business
      summary: returns projects
      description: returns projects
      operationId: getBusinessProjects
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/projects"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: project-name
          in: query
          description:
          required: false
          type: string
  /business/sp-partners/sp-partner/{sp-partner-id}/relationship-list/relationship:
    put:
      tags:
        - Business
      summary: see node definition for valid relationships
      operationId: createOrUpdateBusinessSpPartnersSpPartnerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sp-partner-id
          in: path
          description: Uniquely identifies this sp-partner by id
          required: true
          type: string
          example: __SP-PARTNER-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessSpPartnersSpPartner.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Business
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteBusinessSpPartnersSpPartnerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sp-partner-id
          in: path
          description: Uniquely identifies this sp-partner by id
          required: true
          type: string
          example: __SP-PARTNER-ID__
  /business/sp-partners/sp-partner/{sp-partner-id}:
    get:
      tags:
        - Business
      summary: returns sp-partner
      description: returns sp-partner
      operationId: getBusinessSpPartnersSpPartner
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sp-partner"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sp-partner-id
          in: path
          description: Uniquely identifies this sp-partner by id
          required: true
          type: string
          example: __SP-PARTNER-ID__
    put:
      tags:
        - Business
      summary: create or update an existing sp-partner
      description: |
        Create or update an existing sp-partner.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateBusinessSpPartnersSpPartner
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sp-partner-id
          in: path
          description: Uniquely identifies this sp-partner by id
          required: true
          type: string
          example: __SP-PARTNER-ID__
        - name: body
          in: body
          description: sp-partner object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/BusinessSpPartnersSpPartner.json)
          required: true
          schema:
            $ref: "#/definitions/sp-partner"
    patch:
      tags:
        - Business
      summary: update an existing sp-partner
      description: |
        Update an existing sp-partner
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateBusinessSpPartnersSpPartner
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sp-partner-id
          in: path
          description: Uniquely identifies this sp-partner by id
          required: true
          type: string
          example: __SP-PARTNER-ID__
        - name: body
          in: body
          description: sp-partner object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sp-partner"
    delete:
      tags:
        - Business
      summary: delete an existing sp-partner
      description: delete an existing sp-partner
      operationId: deleteBusinessSpPartnersSpPartner
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sp-partner-id
          in: path
          description: Uniquely identifies this sp-partner by id
          required: true
          type: string
          example: __SP-PARTNER-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /business/sp-partners:
    get:
      tags:
        - Business
      summary: returns sp-partners
      description: returns sp-partners
      operationId: getBusinessSpPartners
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sp-partners"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sp-partner-id
          in: query
          description:
          required: false
          type: string
        - name: url
          in: query
          description:
          required: false
          type: string
        - name: callsource
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/vnf-images/vnf-image/{vnf-image-uuid}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationVnfImagesVnfImageRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-image-uuid
          in: path
          description: Unique ID of this asset
          required: true
          type: string
          example: __VNF-IMAGE-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationVnfImagesVnfImage.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationVnfImagesVnfImageRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-image-uuid
          in: path
          description: Unique ID of this asset
          required: true
          type: string
          example: __VNF-IMAGE-UUID__
  /service-design-and-creation/vnf-images/vnf-image/{vnf-image-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns vnf-image
      description: returns vnf-image
      operationId: getServiceDesignAndCreationVnfImagesVnfImage
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vnf-image"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-image-uuid
          in: path
          description: Unique ID of this asset
          required: true
          type: string
          example: __VNF-IMAGE-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing vnf-image
      description: |
        Create or update an existing vnf-image.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationVnfImagesVnfImage
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-image-uuid
          in: path
          description: Unique ID of this asset
          required: true
          type: string
          example: __VNF-IMAGE-UUID__
        - name: body
          in: body
          description: vnf-image object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationVnfImagesVnfImage.json)
          required: true
          schema:
            $ref: "#/definitions/vnf-image"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing vnf-image
      description: |
        Update an existing vnf-image
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationVnfImagesVnfImage
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-image-uuid
          in: path
          description: Unique ID of this asset
          required: true
          type: string
          example: __VNF-IMAGE-UUID__
        - name: body
          in: body
          description: vnf-image object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vnf-image"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing vnf-image
      description: delete an existing vnf-image
      operationId: deleteServiceDesignAndCreationVnfImagesVnfImage
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-image-uuid
          in: path
          description: Unique ID of this asset
          required: true
          type: string
          example: __VNF-IMAGE-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/vnf-images:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns vnf-images
      description: returns vnf-images
      operationId: getServiceDesignAndCreationVnfImages
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vnf-images"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-image-uuid
          in: query
          description:
          required: false
          type: string
        - name: application
          in: query
          description:
          required: false
          type: string
        - name: application-vendor
          in: query
          description:
          required: false
          type: string
        - name: application-version
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/services/service/{service-id}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationServicesServiceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-id
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationServicesService.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationServicesServiceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-id
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-ID__
  /service-design-and-creation/services/service/{service-id}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns service
      description: returns service
      operationId: getServiceDesignAndCreationServicesService
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/service"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-id
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-ID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing service
      description: |
        Create or update an existing service.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationServicesService
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-id
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-ID__
        - name: body
          in: body
          description: service object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationServicesService.json)
          required: true
          schema:
            $ref: "#/definitions/service"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing service
      description: |
        Update an existing service
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationServicesService
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-id
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-ID__
        - name: body
          in: body
          description: service object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/service"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing service
      description: delete an existing service
      operationId: deleteServiceDesignAndCreationServicesService
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-id
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/services:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns services
      description: returns services
      operationId: getServiceDesignAndCreationServices
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/services"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-id
          in: query
          description:
          required: false
          type: string
        - name: service-description
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/service-capabilities/service-capability/{service-type}/{vnf-type}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationServiceCapabilitiesServiceCapabilityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-type
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: vnf-type
          in: path
          description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
          required: true
          type: string
          example: __VNF-TYPE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationServiceCapabilitiesServiceCapability.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationServiceCapabilitiesServiceCapabilityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-type
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: vnf-type
          in: path
          description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
          required: true
          type: string
          example: __VNF-TYPE__
  /service-design-and-creation/service-capabilities/service-capability/{service-type}/{vnf-type}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns service-capability
      description: returns service-capability
      operationId: getServiceDesignAndCreationServiceCapabilitiesServiceCapability
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/service-capability"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-type
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: vnf-type
          in: path
          description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
          required: true
          type: string
          example: __VNF-TYPE__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing service-capability
      description: |
        Create or update an existing service-capability.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationServiceCapabilitiesServiceCapability
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-type
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: vnf-type
          in: path
          description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
          required: true
          type: string
          example: __VNF-TYPE__
        - name: body
          in: body
          description: service-capability object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationServiceCapabilitiesServiceCapability.json)
          required: true
          schema:
            $ref: "#/definitions/service-capability"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing service-capability
      description: |
        Update an existing service-capability
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationServiceCapabilitiesServiceCapability
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-type
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: vnf-type
          in: path
          description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
          required: true
          type: string
          example: __VNF-TYPE__
        - name: body
          in: body
          description: service-capability object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/service-capability"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing service-capability
      description: delete an existing service-capability
      operationId: deleteServiceDesignAndCreationServiceCapabilitiesServiceCapability
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-type
          in: path
          description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
          required: true
          type: string
          example: __SERVICE-TYPE__
        - name: vnf-type
          in: path
          description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
          required: true
          type: string
          example: __VNF-TYPE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/service-capabilities:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns service-capabilities
      description: returns service-capabilities
      operationId: getServiceDesignAndCreationServiceCapabilities
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/service-capabilities"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: service-type
          in: query
          description:
          required: false
          type: string
        - name: vnf-type
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}/element-choice-sets/element-choice-set/{element-choice-set-uuid}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: element-choice-set-uuid
          in: path
          required: true
          type: string
          example: __ELEMENT-CHOICE-SET-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSet.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: element-choice-set-uuid
          in: path
          required: true
          type: string
          example: __ELEMENT-CHOICE-SET-UUID__
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}/element-choice-sets/element-choice-set/{element-choice-set-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns element-choice-set
      description: returns element-choice-set
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSet
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/element-choice-set"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: element-choice-set-uuid
          in: path
          required: true
          type: string
          example: __ELEMENT-CHOICE-SET-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing element-choice-set
      description: |
        Create or update an existing element-choice-set.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: element-choice-set-uuid
          in: path
          required: true
          type: string
          example: __ELEMENT-CHOICE-SET-UUID__
        - name: body
          in: body
          description: element-choice-set object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSet.json)
          required: true
          schema:
            $ref: "#/definitions/element-choice-set"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing element-choice-set
      description: |
        Update an existing element-choice-set
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSet
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: element-choice-set-uuid
          in: path
          required: true
          type: string
          example: __ELEMENT-CHOICE-SET-UUID__
        - name: body
          in: body
          description: element-choice-set object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/element-choice-set"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing element-choice-set
      description: delete an existing element-choice-set
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSetsElementChoiceSet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: element-choice-set-uuid
          in: path
          required: true
          type: string
          example: __ELEMENT-CHOICE-SET-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}/element-choice-sets:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns element-choice-sets
      description: returns element-choice-sets
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetElementChoiceSets
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/element-choice-sets"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: element-choice-set-uuid
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSet.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets/constrained-element-set/{constrained-element-set-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns constrained-element-set
      description: returns constrained-element-set
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSet
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/constrained-element-set"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing constrained-element-set
      description: |
        Create or update an existing constrained-element-set.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: body
          in: body
          description: constrained-element-set object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSet.json)
          required: true
          schema:
            $ref: "#/definitions/constrained-element-set"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing constrained-element-set
      description: |
        Update an existing constrained-element-set
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSet
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: body
          in: body
          description: constrained-element-set object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/constrained-element-set"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing constrained-element-set
      description: delete an existing constrained-element-set
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSetsConstrainedElementSet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: path
          required: true
          type: string
          example: __CONSTRAINED-ELEMENT-SET-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}/constrained-element-sets:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns constrained-element-sets
      description: returns constrained-element-sets
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraintConstrainedElementSets
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/constrained-element-sets"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: constrained-element-set-uuid
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints/model-constraint/{model-constraint-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns model-constraint
      description: returns model-constraint
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraint
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/model-constraint"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing model-constraint
      description: |
        Create or update an existing model-constraint.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraint
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: body
          in: body
          description: model-constraint object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraint.json)
          required: true
          schema:
            $ref: "#/definitions/model-constraint"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing model-constraint
      description: |
        Update an existing model-constraint
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraint
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: body
          in: body
          description: model-constraint object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/model-constraint"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing model-constraint
      description: delete an existing model-constraint
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraintsModelConstraint
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: path
          required: true
          type: string
          example: __MODEL-CONSTRAINT-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/model-constraints:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns model-constraints
      description: returns model-constraints
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementModelConstraints
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/model-constraints"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: model-constraint-uuid
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElement.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements/model-element/{model-element-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns model-element
      description: returns model-element
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElement
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/model-element"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing model-element
      description: |
        Create or update an existing model-element.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: body
          in: body
          description: model-element object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElement.json)
          required: true
          schema:
            $ref: "#/definitions/model-element"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing model-element
      description: |
        Update an existing model-element
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElement
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: body
          in: body
          description: model-element object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/model-element"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing model-element
      description: delete an existing model-element
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerModelElementsModelElement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: path
          required: true
          type: string
          example: __MODEL-ELEMENT-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/model-elements:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns model-elements
      description: returns model-elements
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerModelElements
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/model-elements"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: model-element-uuid
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/metadata/metadatum/{metaname}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns metadatum
      description: returns metadatum
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerMetadataMetadatum
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadatum"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing metadatum
      description: |
        Create or update an existing metadatum.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVerMetadataMetadatum.json)
          required: true
          schema:
            $ref: "#/definitions/metadatum"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing metadatum
      description: |
        Update an existing metadatum
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationModelsModelModelVersModelVerMetadataMetadatum
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/metadatum"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing metadatum
      description: delete an existing metadatum
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/metadata:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns metadata
      description: returns metadata
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVerMetadata
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadata"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: metaname
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVer.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns model-ver
      description: returns model-ver
      operationId: getServiceDesignAndCreationModelsModelModelVersModelVer
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/model-ver"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing model-ver
      description: |
        Create or update an existing model-ver.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationModelsModelModelVersModelVer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: body
          in: body
          description: model-ver object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModelModelVersModelVer.json)
          required: true
          schema:
            $ref: "#/definitions/model-ver"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing model-ver
      description: |
        Update an existing model-ver
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationModelsModelModelVersModelVer
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: body
          in: body
          description: model-ver object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/model-ver"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing model-ver
      description: delete an existing model-ver
      operationId: deleteServiceDesignAndCreationModelsModelModelVersModelVer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: path
          description: Unique identifier corresponding to one version of a model in ASDC
          required: true
          type: string
          example: __MODEL-VERSION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/model-vers:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns model-vers
      description: returns model-vers
      operationId: getServiceDesignAndCreationModelsModelModelVers
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/model-vers"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: model-name
          in: query
          description:
          required: false
          type: string
        - name: model-version
          in: query
          description:
          required: false
          type: string
        - name: distribution-status
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/models/model/{model-invariant-id}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationModelsModelRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModel.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationModelsModelRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
  /service-design-and-creation/models/model/{model-invariant-id}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns model
      description: returns model
      operationId: getServiceDesignAndCreationModelsModel
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/model"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing model
      description: |
        Create or update an existing model.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationModelsModel
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: body
          in: body
          description: model object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationModelsModel.json)
          required: true
          schema:
            $ref: "#/definitions/model"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing model
      description: |
        Update an existing model
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationModelsModel
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: body
          in: body
          description: model object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/model"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing model
      description: delete an existing model
      operationId: deleteServiceDesignAndCreationModelsModel
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: path
          description: Unique identifier corresponding to the main definition of a model in ASDC
          required: true
          type: string
          example: __MODEL-INVARIANT-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/models:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns models
      description: returns models
      operationId: getServiceDesignAndCreationModels
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/models"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-type
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/related-lookups/related-lookup/{related-lookup-uuid}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: related-lookup-uuid
          in: path
          required: true
          type: string
          example: __RELATED-LOOKUP-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookup.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: related-lookup-uuid
          in: path
          required: true
          type: string
          example: __RELATED-LOOKUP-UUID__
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/related-lookups/related-lookup/{related-lookup-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns related-lookup
      description: returns related-lookup
      operationId: getServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookup
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/related-lookup"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: related-lookup-uuid
          in: path
          required: true
          type: string
          example: __RELATED-LOOKUP-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing related-lookup
      description: |
        Create or update an existing related-lookup.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: related-lookup-uuid
          in: path
          required: true
          type: string
          example: __RELATED-LOOKUP-UUID__
        - name: body
          in: body
          description: related-lookup object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookup.json)
          required: true
          schema:
            $ref: "#/definitions/related-lookup"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing related-lookup
      description: |
        Update an existing related-lookup
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookup
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: related-lookup-uuid
          in: path
          required: true
          type: string
          example: __RELATED-LOOKUP-UUID__
        - name: body
          in: body
          description: related-lookup object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/related-lookup"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing related-lookup
      description: delete an existing related-lookup
      operationId: deleteServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookupsRelatedLookup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: related-lookup-uuid
          in: path
          required: true
          type: string
          example: __RELATED-LOOKUP-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/related-lookups:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns related-lookups
      description: returns related-lookups
      operationId: getServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelatedLookups
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/related-lookups"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: related-lookup-uuid
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/property-constraints/property-constraint/{property-constraint-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns property-constraint
      description: returns property-constraint
      operationId: getServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementPropertyConstraintsPropertyConstraint
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/property-constraint"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: property-constraint-uuid
          in: path
          required: true
          type: string
          example: __PROPERTY-CONSTRAINT-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing property-constraint
      description: |
        Create or update an existing property-constraint.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementPropertyConstraintsPropertyConstraint
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: property-constraint-uuid
          in: path
          required: true
          type: string
          example: __PROPERTY-CONSTRAINT-UUID__
        - name: body
          in: body
          description: property-constraint object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementPropertyConstraintsPropertyConstraint.json)
          required: true
          schema:
            $ref: "#/definitions/property-constraint"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing property-constraint
      description: |
        Update an existing property-constraint
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementPropertyConstraintsPropertyConstraint
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: property-constraint-uuid
          in: path
          required: true
          type: string
          example: __PROPERTY-CONSTRAINT-UUID__
        - name: body
          in: body
          description: property-constraint object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/property-constraint"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing property-constraint
      description: delete an existing property-constraint
      operationId: deleteServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementPropertyConstraintsPropertyConstraint
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: property-constraint-uuid
          in: path
          required: true
          type: string
          example: __PROPERTY-CONSTRAINT-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/property-constraints:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns property-constraints
      description: returns property-constraints
      operationId: getServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementPropertyConstraints
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/property-constraints"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: property-constraint-uuid
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElement.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements/named-query-element/{named-query-element-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns named-query-element
      description: returns named-query-element
      operationId: getServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElement
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/named-query-element"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing named-query-element
      description: |
        Create or update an existing named-query-element.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: body
          in: body
          description: named-query-element object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElement.json)
          required: true
          schema:
            $ref: "#/definitions/named-query-element"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing named-query-element
      description: |
        Update an existing named-query-element
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElement
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: body
          in: body
          description: named-query-element object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/named-query-element"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing named-query-element
      description: delete an existing named-query-element
      operationId: deleteServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElementsNamedQueryElement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-ELEMENT-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/named-query-elements:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns named-query-elements
      description: returns named-query-elements
      operationId: getServiceDesignAndCreationNamedQueriesNamedQueryNamedQueryElements
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/named-query-elements"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: named-query-element-uuid
          in: query
          description:
          required: false
          type: string
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}/relationship-list/relationship:
    put:
      tags:
        - ServiceDesignAndCreation
      summary: see node definition for valid relationships
      operationId: createOrUpdateServiceDesignAndCreationNamedQueriesNamedQueryRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationNamedQueriesNamedQuery.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteServiceDesignAndCreationNamedQueriesNamedQueryRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
  /service-design-and-creation/named-queries/named-query/{named-query-uuid}:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns named-query
      description: returns named-query
      operationId: getServiceDesignAndCreationNamedQueriesNamedQuery
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/named-query"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
    put:
      tags:
        - ServiceDesignAndCreation
      summary: create or update an existing named-query
      description: |
        Create or update an existing named-query.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateServiceDesignAndCreationNamedQueriesNamedQuery
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: body
          in: body
          description: named-query object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/ServiceDesignAndCreationNamedQueriesNamedQuery.json)
          required: true
          schema:
            $ref: "#/definitions/named-query"
    patch:
      tags:
        - ServiceDesignAndCreation
      summary: update an existing named-query
      description: |
        Update an existing named-query
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateServiceDesignAndCreationNamedQueriesNamedQuery
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: body
          in: body
          description: named-query object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/named-query"
    delete:
      tags:
        - ServiceDesignAndCreation
      summary: delete an existing named-query
      description: delete an existing named-query
      operationId: deleteServiceDesignAndCreationNamedQueriesNamedQuery
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: path
          required: true
          type: string
          example: __NAMED-QUERY-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /service-design-and-creation/named-queries:
    get:
      tags:
        - ServiceDesignAndCreation
      summary: returns named-queries
      description: returns named-queries
      operationId: getServiceDesignAndCreationNamedQueries
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/named-queries"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: named-query-uuid
          in: query
          description:
          required: false
          type: string
        - name: named-query-name
          in: query
          description:
          required: false
          type: string
  /network/logical-links/logical-link/{link-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkLogicalLinksLogicalLinkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLogicalLinksLogicalLink.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkLogicalLinksLogicalLinkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
          required: true
          type: string
          example: __LINK-NAME__
  /network/logical-links/logical-link/{link-name}:
    get:
      tags:
        - Network
      summary: returns logical-link
      description: returns logical-link
      operationId: getNetworkLogicalLinksLogicalLink
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/logical-link"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
          required: true
          type: string
          example: __LINK-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing logical-link
      description: |
        Create or update an existing logical-link.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkLogicalLinksLogicalLink
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: logical-link object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLogicalLinksLogicalLink.json)
          required: true
          schema:
            $ref: "#/definitions/logical-link"
    patch:
      tags:
        - Network
      summary: update an existing logical-link
      description: |
        Update an existing logical-link
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkLogicalLinksLogicalLink
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: logical-link object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/logical-link"
    delete:
      tags:
        - Network
      summary: delete an existing logical-link
      description: delete an existing logical-link
      operationId: deleteNetworkLogicalLinksLogicalLink
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/logical-links:
    get:
      tags:
        - Network
      summary: returns logical-links
      description: returns logical-links
      operationId: getNetworkLogicalLinks
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/logical-links"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-version
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: link-id
          in: query
          description:
          required: false
          type: string
        - name: circuit-id
          in: query
          description:
          required: false
          type: string
        - name: purpose
          in: query
          description:
          required: false
          type: string
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfServiceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: cos
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __COS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfService.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfServiceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: cos
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __COS__
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service/class-of-service/{cos}:
    get:
      tags:
        - Network
      summary: returns class-of-service
      description: returns class-of-service
      operationId: getNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfService
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/class-of-service"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: cos
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __COS__
    put:
      tags:
        - Network
      summary: create or update an existing class-of-service
      description: |
        Create or update an existing class-of-service.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfService
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: cos
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __COS__
        - name: body
          in: body
          description: class-of-service object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfService.json)
          required: true
          schema:
            $ref: "#/definitions/class-of-service"
    patch:
      tags:
        - Network
      summary: update an existing class-of-service
      description: |
        Update an existing class-of-service
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfService
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: cos
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __COS__
        - name: body
          in: body
          description: class-of-service object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/class-of-service"
    delete:
      tags:
        - Network
      summary: delete an existing class-of-service
      description: delete an existing class-of-service
      operationId: deleteNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfServiceClassOfService
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: cos
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __COS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/classes-of-service:
    get:
      tags:
        - Network
      summary: returns classes-of-service
      description: returns classes-of-service
      operationId: getNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairClassesOfService
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/classes-of-service"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: cos
          in: query
          description:
          required: false
          type: string
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePair.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePairRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs/site-pair/{site-pair-id}:
    get:
      tags:
        - Network
      summary: returns site-pair
      description: returns site-pair
      operationId: getNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePair
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/site-pair"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
    put:
      tags:
        - Network
      summary: create or update an existing site-pair
      description: |
        Create or update an existing site-pair.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePair
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: body
          in: body
          description: site-pair object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePair.json)
          required: true
          schema:
            $ref: "#/definitions/site-pair"
    patch:
      tags:
        - Network
      summary: update an existing site-pair
      description: |
        Update an existing site-pair
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePair
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: body
          in: body
          description: site-pair object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/site-pair"
    delete:
      tags:
        - Network
      summary: delete an existing site-pair
      description: delete an existing site-pair
      operationId: deleteNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairsSitePair
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: path
          description: unique identifier of probe
          required: true
          type: string
          example: __SITE-PAIR-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/site-pairs:
    get:
      tags:
        - Network
      summary: returns site-pairs
      description: returns site-pairs
      operationId: getNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceSitePairs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/site-pairs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: site-pair-id
          in: query
          description:
          required: false
          type: string
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstance.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstanceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances/routing-instance/{routing-instance-id}:
    get:
      tags:
        - Network
      summary: returns routing-instance
      description: returns routing-instance
      operationId: getNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstance
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/routing-instance"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing routing-instance
      description: |
        Create or update an existing routing-instance.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstance
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: body
          in: body
          description: routing-instance object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstance.json)
          required: true
          schema:
            $ref: "#/definitions/routing-instance"
    patch:
      tags:
        - Network
      summary: update an existing routing-instance
      description: |
        Update an existing routing-instance
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstance
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: body
          in: body
          description: routing-instance object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/routing-instance"
    delete:
      tags:
        - Network
      summary: delete an existing routing-instance
      description: delete an existing routing-instance
      operationId: deleteNetworkSitePairSetsSitePairSetRoutingInstancesRoutingInstance
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: path
          description: Unique id of routing instance
          required: true
          type: string
          example: __ROUTING-INSTANCE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/routing-instances:
    get:
      tags:
        - Network
      summary: returns routing-instances
      description: returns routing-instances
      operationId: getNetworkSitePairSetsSitePairSetRoutingInstances
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/routing-instances"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: routing-instance-id
          in: query
          description:
          required: false
          type: string
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkSitePairSetsSitePairSetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSet.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkSitePairSetsSitePairSetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
  /network/site-pair-sets/site-pair-set/{site-pair-set-id}:
    get:
      tags:
        - Network
      summary: returns site-pair-set
      description: returns site-pair-set
      operationId: getNetworkSitePairSetsSitePairSet
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/site-pair-set"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
    put:
      tags:
        - Network
      summary: create or update an existing site-pair-set
      description: |
        Create or update an existing site-pair-set.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkSitePairSetsSitePairSet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: body
          in: body
          description: site-pair-set object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSitePairSetsSitePairSet.json)
          required: true
          schema:
            $ref: "#/definitions/site-pair-set"
    patch:
      tags:
        - Network
      summary: update an existing site-pair-set
      description: |
        Update an existing site-pair-set
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkSitePairSetsSitePairSet
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: body
          in: body
          description: site-pair-set object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/site-pair-set"
    delete:
      tags:
        - Network
      summary: delete an existing site-pair-set
      description: delete an existing site-pair-set
      operationId: deleteNetworkSitePairSetsSitePairSet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: path
          description: Unique id of site pair set.
          required: true
          type: string
          example: __SITE-PAIR-SET-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/site-pair-sets:
    get:
      tags:
        - Network
      summary: returns site-pair-sets
      description: returns site-pair-sets
      operationId: getNetworkSitePairSets
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/site-pair-sets"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-pair-set-id
          in: query
          description:
          required: false
          type: string
  /network/vpn-bindings/vpn-binding/{vpn-id}/route-targets/route-target/{global-route-target}/{route-target-role}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVpnBindingsVpnBindingRouteTargetsRouteTargetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVpnBindingsVpnBindingRouteTargetsRouteTarget.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVpnBindingsVpnBindingRouteTargetsRouteTargetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
  /network/vpn-bindings/vpn-binding/{vpn-id}/route-targets/route-target/{global-route-target}/{route-target-role}:
    get:
      tags:
        - Network
      summary: returns route-target
      description: returns route-target
      operationId: getNetworkVpnBindingsVpnBindingRouteTargetsRouteTarget
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/route-target"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
    put:
      tags:
        - Network
      summary: create or update an existing route-target
      description: |
        Create or update an existing route-target.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVpnBindingsVpnBindingRouteTargetsRouteTarget
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: body
          in: body
          description: route-target object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVpnBindingsVpnBindingRouteTargetsRouteTarget.json)
          required: true
          schema:
            $ref: "#/definitions/route-target"
    patch:
      tags:
        - Network
      summary: update an existing route-target
      description: |
        Update an existing route-target
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVpnBindingsVpnBindingRouteTargetsRouteTarget
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: body
          in: body
          description: route-target object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/route-target"
    delete:
      tags:
        - Network
      summary: delete an existing route-target
      description: delete an existing route-target
      operationId: deleteNetworkVpnBindingsVpnBindingRouteTargetsRouteTarget
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpn-bindings/vpn-binding/{vpn-id}/route-targets:
    get:
      tags:
        - Network
      summary: returns route-targets
      description: returns route-targets
      operationId: getNetworkVpnBindingsVpnBindingRouteTargets
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/route-targets"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
  /network/vpn-bindings/vpn-binding/{vpn-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVpnBindingsVpnBindingRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVpnBindingsVpnBinding.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVpnBindingsVpnBindingRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
  /network/vpn-bindings/vpn-binding/{vpn-id}:
    get:
      tags:
        - Network
      summary: returns vpn-binding
      description: returns vpn-binding
      operationId: getNetworkVpnBindingsVpnBinding
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vpn-binding"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
    put:
      tags:
        - Network
      summary: create or update an existing vpn-binding
      description: |
        Create or update an existing vpn-binding.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVpnBindingsVpnBinding
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: body
          in: body
          description: vpn-binding object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVpnBindingsVpnBinding.json)
          required: true
          schema:
            $ref: "#/definitions/vpn-binding"
    patch:
      tags:
        - Network
      summary: update an existing vpn-binding
      description: |
        Update an existing vpn-binding
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVpnBindingsVpnBinding
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: body
          in: body
          description: vpn-binding object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vpn-binding"
    delete:
      tags:
        - Network
      summary: delete an existing vpn-binding
      description: delete an existing vpn-binding
      operationId: deleteNetworkVpnBindingsVpnBinding
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: path
          description: VPN ID, globally unique within A&AI
          required: true
          type: string
          example: __VPN-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpn-bindings:
    get:
      tags:
        - Network
      summary: returns vpn-bindings
      description: returns vpn-bindings
      operationId: getNetworkVpnBindings
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vpn-bindings"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vpn-id
          in: query
          description:
          required: false
          type: string
        - name: vpn-name
          in: query
          description:
          required: false
          type: string
        - name: vpn-type
          in: query
          description:
          required: false
          type: string
        - name: access-provider-id
          in: query
          description:
          required: false
          type: string
        - name: access-client-id
          in: query
          description:
          required: false
          type: string
        - name: access-topology-id
          in: query
          description:
          required: false
          type: string
        - name: src-access-node-id
          in: query
          description:
          required: false
          type: string
        - name: src-access-ltp-id
          in: query
          description:
          required: false
          type: string
        - name: dst-access-node-id
          in: query
          description:
          required: false
          type: string
        - name: dst-access-ltp-id
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPe.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/sriov-pfs/sriov-pf/{pf-pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/sriov-pfs/sriov-pf/{pf-pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-pf
      description: returns sriov-pf
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-pf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-pf
      description: |
        Create or update an existing sriov-pf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: sriov-pf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-pf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-pf
      description: |
        Update an existing sriov-pf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: sriov-pf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-pf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-pf
      description: delete an existing sriov-pf
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/sriov-pfs:
    get:
      tags:
        - Network
      summary: returns sriov-pfs
      description: returns sriov-pfs
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceSriovPfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-pfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - Network
      summary: returns vlan
      description: returns vlan
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - Network
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - Network
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - Network
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - Network
      summary: returns vlans
      description: returns vlans
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - Network
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns l-interface
      description: returns l-interface
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - Network
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - Network
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}/l-interfaces:
    get:
      tags:
        - Network
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getNetworkVplsPesVplsPePInterfacesPInterfaceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces/p-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns p-interface
      description: returns p-interface
      operationId: getNetworkVplsPesVplsPePInterfacesPInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/p-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing p-interface
      description: |
        Create or update an existing p-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPePInterfacesPInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: p-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPePInterfacesPInterface.json)
          required: true
          schema:
            $ref: "#/definitions/p-interface"
    patch:
      tags:
        - Network
      summary: update an existing p-interface
      description: |
        Update an existing p-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPePInterfacesPInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: p-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/p-interface"
    delete:
      tags:
        - Network
      summary: delete an existing p-interface
      description: delete an existing p-interface
      operationId: deleteNetworkVplsPesVplsPePInterfacesPInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/p-interfaces:
    get:
      tags:
        - Network
      summary: returns p-interfaces
      description: returns p-interfaces
      operationId: getNetworkVplsPesVplsPePInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/p-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - Network
      summary: returns vlan
      description: returns vlan
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - Network
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - Network
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - Network
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - Network
      summary: returns vlans
      description: returns vlans
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - Network
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns l-interface
      description: returns l-interface
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - Network
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - Network
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces:
    get:
      tags:
        - Network
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterfaceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces/lag-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns lag-interface
      description: returns lag-interface
      operationId: getNetworkVplsPesVplsPeLagInterfacesLagInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing lag-interface
      description: |
        Create or update an existing lag-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPeLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPeLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/lag-interface"
    patch:
      tags:
        - Network
      summary: update an existing lag-interface
      description: |
        Update an existing lag-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPeLagInterfacesLagInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/lag-interface"
    delete:
      tags:
        - Network
      summary: delete an existing lag-interface
      description: delete an existing lag-interface
      operationId: deleteNetworkVplsPesVplsPeLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}/lag-interfaces:
    get:
      tags:
        - Network
      summary: returns lag-interfaces
      description: returns lag-interfaces
      operationId: getNetworkVplsPesVplsPeLagInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: interface-role
          in: query
          description:
          required: false
          type: string
  /network/vpls-pes/vpls-pe/{equipment-name}:
    get:
      tags:
        - Network
      summary: returns vpls-pe
      description: returns vpls-pe
      operationId: getNetworkVplsPesVplsPe
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vpls-pe"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing vpls-pe
      description: |
        Create or update an existing vpls-pe.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVplsPesVplsPe
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: body
          in: body
          description: vpls-pe object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVplsPesVplsPe.json)
          required: true
          schema:
            $ref: "#/definitions/vpls-pe"
    patch:
      tags:
        - Network
      summary: update an existing vpls-pe
      description: |
        Update an existing vpls-pe
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVplsPesVplsPe
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: body
          in: body
          description: vpls-pe object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vpls-pe"
    delete:
      tags:
        - Network
      summary: delete an existing vpls-pe
      description: delete an existing vpls-pe
      operationId: deleteNetworkVplsPesVplsPe
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: path
          required: true
          type: string
          example: __EQUIPMENT-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vpls-pes:
    get:
      tags:
        - Network
      summary: returns vpls-pes
      description: returns vpls-pes
      operationId: getNetworkVplsPes
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vpls-pes"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: equipment-name
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
  /network/multicast-configurations/multicast-configuration/{multicast-configuration-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkMulticastConfigurationsMulticastConfigurationRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: multicast-configuration-id
          in: path
          description: Unique id of multicast configuration.
          required: true
          type: string
          example: __MULTICAST-CONFIGURATION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkMulticastConfigurationsMulticastConfiguration.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkMulticastConfigurationsMulticastConfigurationRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: multicast-configuration-id
          in: path
          description: Unique id of multicast configuration.
          required: true
          type: string
          example: __MULTICAST-CONFIGURATION-ID__
  /network/multicast-configurations/multicast-configuration/{multicast-configuration-id}:
    get:
      tags:
        - Network
      summary: returns multicast-configuration
      description: returns multicast-configuration
      operationId: getNetworkMulticastConfigurationsMulticastConfiguration
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/multicast-configuration"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: multicast-configuration-id
          in: path
          description: Unique id of multicast configuration.
          required: true
          type: string
          example: __MULTICAST-CONFIGURATION-ID__
    put:
      tags:
        - Network
      summary: create or update an existing multicast-configuration
      description: |
        Create or update an existing multicast-configuration.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkMulticastConfigurationsMulticastConfiguration
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: multicast-configuration-id
          in: path
          description: Unique id of multicast configuration.
          required: true
          type: string
          example: __MULTICAST-CONFIGURATION-ID__
        - name: body
          in: body
          description: multicast-configuration object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkMulticastConfigurationsMulticastConfiguration.json)
          required: true
          schema:
            $ref: "#/definitions/multicast-configuration"
    patch:
      tags:
        - Network
      summary: update an existing multicast-configuration
      description: |
        Update an existing multicast-configuration
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkMulticastConfigurationsMulticastConfiguration
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: multicast-configuration-id
          in: path
          description: Unique id of multicast configuration.
          required: true
          type: string
          example: __MULTICAST-CONFIGURATION-ID__
        - name: body
          in: body
          description: multicast-configuration object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/multicast-configuration"
    delete:
      tags:
        - Network
      summary: delete an existing multicast-configuration
      description: delete an existing multicast-configuration
      operationId: deleteNetworkMulticastConfigurationsMulticastConfiguration
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: multicast-configuration-id
          in: path
          description: Unique id of multicast configuration.
          required: true
          type: string
          example: __MULTICAST-CONFIGURATION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/multicast-configurations:
    get:
      tags:
        - Network
      summary: returns multicast-configurations
      description: returns multicast-configurations
      operationId: getNetworkMulticastConfigurations
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/multicast-configurations"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: multicast-configuration-id
          in: query
          description:
          required: false
          type: string
  /network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}/cvlan-tags/cvlan-tag-entry/{cvlan-tag}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntryRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: cvlan-tag
          in: path
          description: See mis-na-virtualization-platform.yang
          required: true
          type: integer
          format: int64
          example: __CVLAN-TAG__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntry.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntryRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: cvlan-tag
          in: path
          description: See mis-na-virtualization-platform.yang
          required: true
          type: integer
          format: int64
          example: __CVLAN-TAG__
  /network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}/cvlan-tags/cvlan-tag-entry/{cvlan-tag}:
    get:
      tags:
        - Network
      summary: returns cvlan-tag-entry
      description: returns cvlan-tag-entry
      operationId: getNetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntry
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/cvlan-tag-entry"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: cvlan-tag
          in: path
          description: See mis-na-virtualization-platform.yang
          required: true
          type: integer
          format: int64
          example: __CVLAN-TAG__
    put:
      tags:
        - Network
      summary: create or update an existing cvlan-tag-entry
      description: |
        Create or update an existing cvlan-tag-entry.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntry
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: cvlan-tag
          in: path
          description: See mis-na-virtualization-platform.yang
          required: true
          type: integer
          format: int64
          example: __CVLAN-TAG__
        - name: body
          in: body
          description: cvlan-tag-entry object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntry.json)
          required: true
          schema:
            $ref: "#/definitions/cvlan-tag-entry"
    patch:
      tags:
        - Network
      summary: update an existing cvlan-tag-entry
      description: |
        Update an existing cvlan-tag-entry
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntry
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: cvlan-tag
          in: path
          description: See mis-na-virtualization-platform.yang
          required: true
          type: integer
          format: int64
          example: __CVLAN-TAG__
        - name: body
          in: body
          description: cvlan-tag-entry object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/cvlan-tag-entry"
    delete:
      tags:
        - Network
      summary: delete an existing cvlan-tag-entry
      description: delete an existing cvlan-tag-entry
      operationId: deleteNetworkVcesVcePortGroupsPortGroupCvlanTagsCvlanTagEntry
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: cvlan-tag
          in: path
          description: See mis-na-virtualization-platform.yang
          required: true
          type: integer
          format: int64
          example: __CVLAN-TAG__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}/cvlan-tags:
    get:
      tags:
        - Network
      summary: returns cvlan-tags
      description: returns cvlan-tags
      operationId: getNetworkVcesVcePortGroupsPortGroupCvlanTags
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/cvlan-tags"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: cvlan-tag
          in: query
          description:
          required: false
          type: integer
          format: int64
  /network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVcesVcePortGroupsPortGroupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVcePortGroupsPortGroup.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVcesVcePortGroupsPortGroupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
  /network/vces/vce/{vnf-id}/port-groups/port-group/{interface-id}:
    get:
      tags:
        - Network
      summary: returns port-group
      description: returns port-group
      operationId: getNetworkVcesVcePortGroupsPortGroup
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/port-group"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing port-group
      description: |
        Create or update an existing port-group.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVcesVcePortGroupsPortGroup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: body
          in: body
          description: port-group object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVcePortGroupsPortGroup.json)
          required: true
          schema:
            $ref: "#/definitions/port-group"
    patch:
      tags:
        - Network
      summary: update an existing port-group
      description: |
        Update an existing port-group
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVcesVcePortGroupsPortGroup
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: body
          in: body
          description: port-group object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/port-group"
    delete:
      tags:
        - Network
      summary: delete an existing port-group
      description: delete an existing port-group
      operationId: deleteNetworkVcesVcePortGroupsPortGroup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: path
          description: Unique ID of the interface
          required: true
          type: string
          example: __INTERFACE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vces/vce/{vnf-id}/port-groups:
    get:
      tags:
        - Network
      summary: returns port-groups
      description: returns port-groups
      operationId: getNetworkVcesVcePortGroups
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/port-groups"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: port-group-id
          in: query
          description:
          required: false
          type: string
        - name: switch-name
          in: query
          description:
          required: false
          type: string
        - name: heat-stack-id
          in: query
          description:
          required: false
          type: string
  /network/vces/vce/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVcesVceLicensesLicenseRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVceLicensesLicense.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVcesVceLicensesLicenseRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
  /network/vces/vce/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}:
    get:
      tags:
        - Network
      summary: returns license
      description: returns license
      operationId: getNetworkVcesVceLicensesLicense
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/license"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
    put:
      tags:
        - Network
      summary: create or update an existing license
      description: |
        Create or update an existing license.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVcesVceLicensesLicense
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: license object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVceLicensesLicense.json)
          required: true
          schema:
            $ref: "#/definitions/license"
    patch:
      tags:
        - Network
      summary: update an existing license
      description: |
        Update an existing license
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVcesVceLicensesLicense
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: license object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/license"
    delete:
      tags:
        - Network
      summary: delete an existing license
      description: delete an existing license
      operationId: deleteNetworkVcesVceLicensesLicense
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vces/vce/{vnf-id}/licenses:
    get:
      tags:
        - Network
      summary: returns licenses
      description: returns licenses
      operationId: getNetworkVcesVceLicenses
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/licenses"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: query
          description:
          required: false
          type: string
        - name: resource-uuid
          in: query
          description:
          required: false
          type: string
  /network/vces/vce/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVcesVceEntitlementsEntitlementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVceEntitlementsEntitlement.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVcesVceEntitlementsEntitlementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
  /network/vces/vce/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}:
    get:
      tags:
        - Network
      summary: returns entitlement
      description: returns entitlement
      operationId: getNetworkVcesVceEntitlementsEntitlement
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/entitlement"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
    put:
      tags:
        - Network
      summary: create or update an existing entitlement
      description: |
        Create or update an existing entitlement.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVcesVceEntitlementsEntitlement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: entitlement object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVceEntitlementsEntitlement.json)
          required: true
          schema:
            $ref: "#/definitions/entitlement"
    patch:
      tags:
        - Network
      summary: update an existing entitlement
      description: |
        Update an existing entitlement
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVcesVceEntitlementsEntitlement
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: entitlement object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/entitlement"
    delete:
      tags:
        - Network
      summary: delete an existing entitlement
      description: delete an existing entitlement
      operationId: deleteNetworkVcesVceEntitlementsEntitlement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vces/vce/{vnf-id}/entitlements:
    get:
      tags:
        - Network
      summary: returns entitlements
      description: returns entitlements
      operationId: getNetworkVcesVceEntitlements
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/entitlements"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: query
          description:
          required: false
          type: string
        - name: resource-uuid
          in: query
          description:
          required: false
          type: string
  /network/vces/vce/{vnf-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVcesVceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVce.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVcesVceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
  /network/vces/vce/{vnf-id}:
    get:
      tags:
        - Network
      summary: returns vce
      description: returns vce
      operationId: getNetworkVcesVce
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vce"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
    put:
      tags:
        - Network
      summary: create or update an existing vce
      description: |
        Create or update an existing vce.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVcesVce
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: body
          in: body
          description: vce object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVcesVce.json)
          required: true
          schema:
            $ref: "#/definitions/vce"
    patch:
      tags:
        - Network
      summary: update an existing vce
      description: |
        Update an existing vce
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVcesVce
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: body
          in: body
          description: vce object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vce"
    delete:
      tags:
        - Network
      summary: delete an existing vce
      description: delete an existing vce
      operationId: deleteNetworkVcesVce
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vces:
    get:
      tags:
        - Network
      summary: returns vces
      description: returns vces
      operationId: getNetworkVces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: query
          description:
          required: false
          type: string
        - name: vnf-name
          in: query
          description:
          required: false
          type: string
        - name: vnf-name2
          in: query
          description:
          required: false
          type: string
        - name: vnf-type
          in: query
          description:
          required: false
          type: string
        - name: service-id
          in: query
          description:
          required: false
          type: string
        - name: regional-resource-zone
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: heat-stack-id
          in: query
          description:
          required: false
          type: string
        - name: vpe-id
          in: query
          description:
          required: false
          type: string
  /network/vnfcs/vnfc/{vnfc-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVnfcsVnfcRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfc.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVnfcsVnfcRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
  /network/vnfcs/vnfc/{vnfc-name}/cps/cp/{cp-instance-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVnfcsVnfcCpsCpRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcCpsCp.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVnfcsVnfcCpsCpRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
  /network/vnfcs/vnfc/{vnfc-name}/cps/cp/{cp-instance-id}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/vnfcs/vnfc/{vnfc-name}/cps/cp/{cp-instance-id}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkVnfcsVnfcCpsCpL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vnfcs/vnfc/{vnfc-name}/cps/cp/{cp-instance-id}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/vnfcs/vnfc/{vnfc-name}/cps/cp/{cp-instance-id}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkVnfcsVnfcCpsCpL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vnfcs/vnfc/{vnfc-name}/cps/cp/{cp-instance-id}:
    get:
      tags:
        - Network
      summary: returns cp
      description: returns cp
      operationId: getNetworkVnfcsVnfcCpsCp
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/cp"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing cp
      description: |
        Create or update an existing cp.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVnfcsVnfcCpsCp
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: body
          in: body
          description: cp object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcCpsCp.json)
          required: true
          schema:
            $ref: "#/definitions/cp"
    patch:
      tags:
        - Network
      summary: update an existing cp
      description: |
        Update an existing cp
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVnfcsVnfcCpsCp
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: body
          in: body
          description: cp object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/cp"
    delete:
      tags:
        - Network
      summary: delete an existing cp
      description: delete an existing cp
      operationId: deleteNetworkVnfcsVnfcCpsCp
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: cp-instance-id
          in: path
          description: Unique ID of the connection point.
          required: true
          type: string
          example: __CP-INSTANCE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vnfcs/vnfc/{vnfc-name}/cps:
    get:
      tags:
        - Network
      summary: returns cps
      description: returns cps
      operationId: getNetworkVnfcsVnfcCps
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/cps"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
  /network/vnfcs/vnfc/{vnfc-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVnfcsVnfcL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVnfcsVnfcL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/vnfcs/vnfc/{vnfc-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkVnfcsVnfcL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVnfcsVnfcL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVnfcsVnfcL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkVnfcsVnfcL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vnfcs/vnfc/{vnfc-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVnfcsVnfcL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVnfcsVnfcL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/vnfcs/vnfc/{vnfc-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkVnfcsVnfcL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVnfcsVnfcL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfcL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVnfcsVnfcL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkVnfcsVnfcL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vnfcs/vnfc/{vnfc-name}:
    get:
      tags:
        - Network
      summary: returns vnfc
      description: returns vnfc
      operationId: getNetworkVnfcsVnfc
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vnfc"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing vnfc
      description: |
        Create or update an existing vnfc.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVnfcsVnfc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: body
          in: body
          description: vnfc object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVnfcsVnfc.json)
          required: true
          schema:
            $ref: "#/definitions/vnfc"
    patch:
      tags:
        - Network
      summary: update an existing vnfc
      description: |
        Update an existing vnfc
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVnfcsVnfc
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: body
          in: body
          description: vnfc object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vnfc"
    delete:
      tags:
        - Network
      summary: delete an existing vnfc
      description: delete an existing vnfc
      operationId: deleteNetworkVnfcsVnfc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: path
          description: Unique ID of vnfc.
          required: true
          type: string
          example: __VNFC-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vnfcs:
    get:
      tags:
        - Network
      summary: returns vnfcs
      description: returns vnfcs
      operationId: getNetworkVnfcs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vnfcs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnfc-name
          in: query
          description:
          required: false
          type: string
        - name: nfc-naming-code
          in: query
          description:
          required: false
          type: string
        - name: nfc-function
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: ipaddress-v4-oam-vip
          in: query
          description:
          required: false
          type: string
        - name: in-maint
          in: query
          description:
          required: false
          type: boolean
        - name: is-closed-loop-disabled
          in: query
          description:
          required: false
          type: boolean
        - name: group-notation
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}/host-routes/host-route/{host-route-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRouteRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: host-route-id
          in: path
          description: host-route id
          required: true
          type: string
          example: __HOST-ROUTE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRoute.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRouteRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: host-route-id
          in: path
          description: host-route id
          required: true
          type: string
          example: __HOST-ROUTE-ID__
  /network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}/host-routes/host-route/{host-route-id}:
    get:
      tags:
        - Network
      summary: returns host-route
      description: returns host-route
      operationId: getNetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRoute
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/host-route"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: host-route-id
          in: path
          description: host-route id
          required: true
          type: string
          example: __HOST-ROUTE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing host-route
      description: |
        Create or update an existing host-route.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRoute
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: host-route-id
          in: path
          description: host-route id
          required: true
          type: string
          example: __HOST-ROUTE-ID__
        - name: body
          in: body
          description: host-route object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRoute.json)
          required: true
          schema:
            $ref: "#/definitions/host-route"
    patch:
      tags:
        - Network
      summary: update an existing host-route
      description: |
        Update an existing host-route
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRoute
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: host-route-id
          in: path
          description: host-route id
          required: true
          type: string
          example: __HOST-ROUTE-ID__
        - name: body
          in: body
          description: host-route object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/host-route"
    delete:
      tags:
        - Network
      summary: delete an existing host-route
      description: delete an existing host-route
      operationId: deleteNetworkL3NetworksL3NetworkSubnetsSubnetHostRoutesHostRoute
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: host-route-id
          in: path
          description: host-route id
          required: true
          type: string
          example: __HOST-ROUTE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}/host-routes:
    get:
      tags:
        - Network
      summary: returns host-routes
      description: returns host-routes
      operationId: getNetworkL3NetworksL3NetworkSubnetsSubnetHostRoutes
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/host-routes"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: host-route-id
          in: query
          description:
          required: false
          type: string
  /network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkL3NetworksL3NetworkSubnetsSubnetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkSubnetsSubnet.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkL3NetworksL3NetworkSubnetsSubnetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
  /network/l3-networks/l3-network/{network-id}/subnets/subnet/{subnet-id}:
    get:
      tags:
        - Network
      summary: returns subnet
      description: returns subnet
      operationId: getNetworkL3NetworksL3NetworkSubnetsSubnet
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/subnet"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
    put:
      tags:
        - Network
      summary: create or update an existing subnet
      description: |
        Create or update an existing subnet.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkL3NetworksL3NetworkSubnetsSubnet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: body
          in: body
          description: subnet object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkSubnetsSubnet.json)
          required: true
          schema:
            $ref: "#/definitions/subnet"
    patch:
      tags:
        - Network
      summary: update an existing subnet
      description: |
        Update an existing subnet
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkL3NetworksL3NetworkSubnetsSubnet
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: body
          in: body
          description: subnet object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/subnet"
    delete:
      tags:
        - Network
      summary: delete an existing subnet
      description: delete an existing subnet
      operationId: deleteNetworkL3NetworksL3NetworkSubnetsSubnet
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: path
          description: Subnet ID, should be UUID.
          required: true
          type: string
          example: __SUBNET-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/l3-networks/l3-network/{network-id}/subnets:
    get:
      tags:
        - Network
      summary: returns subnets
      description: returns subnets
      operationId: getNetworkL3NetworksL3NetworkSubnets
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/subnets"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: subnet-id
          in: query
          description:
          required: false
          type: string
        - name: subnet-name
          in: query
          description:
          required: false
          type: string
  /network/l3-networks/l3-network/{network-id}/ctag-assignments/ctag-assignment/{vlan-id-inner}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: vlan-id-inner
          in: path
          description: id.
          required: true
          type: integer
          format: int64
          example: __VLAN-ID-INNER__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignment.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: vlan-id-inner
          in: path
          description: id.
          required: true
          type: integer
          format: int64
          example: __VLAN-ID-INNER__
  /network/l3-networks/l3-network/{network-id}/ctag-assignments/ctag-assignment/{vlan-id-inner}:
    get:
      tags:
        - Network
      summary: returns ctag-assignment
      description: returns ctag-assignment
      operationId: getNetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignment
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ctag-assignment"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: vlan-id-inner
          in: path
          description: id.
          required: true
          type: integer
          format: int64
          example: __VLAN-ID-INNER__
    put:
      tags:
        - Network
      summary: create or update an existing ctag-assignment
      description: |
        Create or update an existing ctag-assignment.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: vlan-id-inner
          in: path
          description: id.
          required: true
          type: integer
          format: int64
          example: __VLAN-ID-INNER__
        - name: body
          in: body
          description: ctag-assignment object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignment.json)
          required: true
          schema:
            $ref: "#/definitions/ctag-assignment"
    patch:
      tags:
        - Network
      summary: update an existing ctag-assignment
      description: |
        Update an existing ctag-assignment
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignment
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: vlan-id-inner
          in: path
          description: id.
          required: true
          type: integer
          format: int64
          example: __VLAN-ID-INNER__
        - name: body
          in: body
          description: ctag-assignment object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/ctag-assignment"
    delete:
      tags:
        - Network
      summary: delete an existing ctag-assignment
      description: delete an existing ctag-assignment
      operationId: deleteNetworkL3NetworksL3NetworkCtagAssignmentsCtagAssignment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: vlan-id-inner
          in: path
          description: id.
          required: true
          type: integer
          format: int64
          example: __VLAN-ID-INNER__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/l3-networks/l3-network/{network-id}/ctag-assignments:
    get:
      tags:
        - Network
      summary: returns ctag-assignments
      description: returns ctag-assignments
      operationId: getNetworkL3NetworksL3NetworkCtagAssignments
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ctag-assignments"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
  /network/l3-networks/l3-network/{network-id}/segmentation-assignments/segmentation-assignment/{segmentation-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: segmentation-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __SEGMENTATION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignment.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignmentRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: segmentation-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __SEGMENTATION-ID__
  /network/l3-networks/l3-network/{network-id}/segmentation-assignments/segmentation-assignment/{segmentation-id}:
    get:
      tags:
        - Network
      summary: returns segmentation-assignment
      description: returns segmentation-assignment
      operationId: getNetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignment
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/segmentation-assignment"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: segmentation-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __SEGMENTATION-ID__
    put:
      tags:
        - Network
      summary: create or update an existing segmentation-assignment
      description: |
        Create or update an existing segmentation-assignment.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: segmentation-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __SEGMENTATION-ID__
        - name: body
          in: body
          description: segmentation-assignment object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignment.json)
          required: true
          schema:
            $ref: "#/definitions/segmentation-assignment"
    patch:
      tags:
        - Network
      summary: update an existing segmentation-assignment
      description: |
        Update an existing segmentation-assignment
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignment
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: segmentation-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __SEGMENTATION-ID__
        - name: body
          in: body
          description: segmentation-assignment object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/segmentation-assignment"
    delete:
      tags:
        - Network
      summary: delete an existing segmentation-assignment
      description: delete an existing segmentation-assignment
      operationId: deleteNetworkL3NetworksL3NetworkSegmentationAssignmentsSegmentationAssignment
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: segmentation-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __SEGMENTATION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/l3-networks/l3-network/{network-id}/segmentation-assignments:
    get:
      tags:
        - Network
      summary: returns segmentation-assignments
      description: returns segmentation-assignments
      operationId: getNetworkL3NetworksL3NetworkSegmentationAssignments
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/segmentation-assignments"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: segmentation-id
          in: query
          description:
          required: false
          type: string
  /network/l3-networks/l3-network/{network-id}/aggregate-routes/aggregate-route/{route-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkL3NetworksL3NetworkAggregateRoutesAggregateRouteRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: route-id
          in: path
          description: Unique id of the aggregate-route instance
          required: true
          type: string
          example: __ROUTE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkAggregateRoutesAggregateRoute.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkL3NetworksL3NetworkAggregateRoutesAggregateRouteRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: route-id
          in: path
          description: Unique id of the aggregate-route instance
          required: true
          type: string
          example: __ROUTE-ID__
  /network/l3-networks/l3-network/{network-id}/aggregate-routes/aggregate-route/{route-id}:
    get:
      tags:
        - Network
      summary: returns aggregate-route
      description: returns aggregate-route
      operationId: getNetworkL3NetworksL3NetworkAggregateRoutesAggregateRoute
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/aggregate-route"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: route-id
          in: path
          description: Unique id of the aggregate-route instance
          required: true
          type: string
          example: __ROUTE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing aggregate-route
      description: |
        Create or update an existing aggregate-route.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkL3NetworksL3NetworkAggregateRoutesAggregateRoute
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: route-id
          in: path
          description: Unique id of the aggregate-route instance
          required: true
          type: string
          example: __ROUTE-ID__
        - name: body
          in: body
          description: aggregate-route object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3NetworkAggregateRoutesAggregateRoute.json)
          required: true
          schema:
            $ref: "#/definitions/aggregate-route"
    patch:
      tags:
        - Network
      summary: update an existing aggregate-route
      description: |
        Update an existing aggregate-route
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkL3NetworksL3NetworkAggregateRoutesAggregateRoute
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: route-id
          in: path
          description: Unique id of the aggregate-route instance
          required: true
          type: string
          example: __ROUTE-ID__
        - name: body
          in: body
          description: aggregate-route object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/aggregate-route"
    delete:
      tags:
        - Network
      summary: delete an existing aggregate-route
      description: delete an existing aggregate-route
      operationId: deleteNetworkL3NetworksL3NetworkAggregateRoutesAggregateRoute
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: route-id
          in: path
          description: Unique id of the aggregate-route instance
          required: true
          type: string
          example: __ROUTE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/l3-networks/l3-network/{network-id}/aggregate-routes:
    get:
      tags:
        - Network
      summary: returns aggregate-routes
      description: returns aggregate-routes
      operationId: getNetworkL3NetworksL3NetworkAggregateRoutes
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/aggregate-routes"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
  /network/l3-networks/l3-network/{network-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkL3NetworksL3NetworkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3Network.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkL3NetworksL3NetworkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
  /network/l3-networks/l3-network/{network-id}:
    get:
      tags:
        - Network
      summary: returns l3-network
      description: returns l3-network
      operationId: getNetworkL3NetworksL3Network
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-network"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
    put:
      tags:
        - Network
      summary: create or update an existing l3-network
      description: |
        Create or update an existing l3-network.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkL3NetworksL3Network
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: body
          in: body
          description: l3-network object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkL3NetworksL3Network.json)
          required: true
          schema:
            $ref: "#/definitions/l3-network"
    patch:
      tags:
        - Network
      summary: update an existing l3-network
      description: |
        Update an existing l3-network
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkL3NetworksL3Network
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: body
          in: body
          description: l3-network object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-network"
    delete:
      tags:
        - Network
      summary: delete an existing l3-network
      description: delete an existing l3-network
      operationId: deleteNetworkL3NetworksL3Network
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Network ID, should be uuid. Unique across A&AI.
          required: true
          type: string
          example: __NETWORK-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/l3-networks:
    get:
      tags:
        - Network
      summary: returns l3-networks
      description: returns l3-networks
      operationId: getNetworkL3Networks
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-networks"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
        - name: network-role
          in: query
          description:
          required: false
          type: string
        - name: service-id
          in: query
          description:
          required: false
          type: string
        - name: heat-stack-id
          in: query
          description:
          required: false
          type: string
        - name: contrail-network-fqdn
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-version
          in: query
          description:
          required: false
          type: string
  /network/network-policies/network-policy/{network-policy-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNetworkPoliciesNetworkPolicyRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-policy-id
          in: path
          description: UUID representing unique key to this instance
          required: true
          type: string
          example: __NETWORK-POLICY-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNetworkPoliciesNetworkPolicy.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNetworkPoliciesNetworkPolicyRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-policy-id
          in: path
          description: UUID representing unique key to this instance
          required: true
          type: string
          example: __NETWORK-POLICY-ID__
  /network/network-policies/network-policy/{network-policy-id}:
    get:
      tags:
        - Network
      summary: returns network-policy
      description: returns network-policy
      operationId: getNetworkNetworkPoliciesNetworkPolicy
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-policy"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-policy-id
          in: path
          description: UUID representing unique key to this instance
          required: true
          type: string
          example: __NETWORK-POLICY-ID__
    put:
      tags:
        - Network
      summary: create or update an existing network-policy
      description: |
        Create or update an existing network-policy.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNetworkPoliciesNetworkPolicy
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-policy-id
          in: path
          description: UUID representing unique key to this instance
          required: true
          type: string
          example: __NETWORK-POLICY-ID__
        - name: body
          in: body
          description: network-policy object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNetworkPoliciesNetworkPolicy.json)
          required: true
          schema:
            $ref: "#/definitions/network-policy"
    patch:
      tags:
        - Network
      summary: update an existing network-policy
      description: |
        Update an existing network-policy
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNetworkPoliciesNetworkPolicy
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-policy-id
          in: path
          description: UUID representing unique key to this instance
          required: true
          type: string
          example: __NETWORK-POLICY-ID__
        - name: body
          in: body
          description: network-policy object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/network-policy"
    delete:
      tags:
        - Network
      summary: delete an existing network-policy
      description: delete an existing network-policy
      operationId: deleteNetworkNetworkPoliciesNetworkPolicy
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-policy-id
          in: path
          description: UUID representing unique key to this instance
          required: true
          type: string
          example: __NETWORK-POLICY-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/network-policies:
    get:
      tags:
        - Network
      summary: returns network-policies
      description: returns network-policies
      operationId: getNetworkNetworkPolicies
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-policies"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-policy-id
          in: query
          description:
          required: false
          type: string
        - name: network-policy-fqdn
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - Network
      summary: returns vlan
      description: returns vlan
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - Network
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - Network
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - Network
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - Network
      summary: returns vlans
      description: returns vlans
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - Network
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns l-interface
      description: returns l-interface
      operationId: getNetworkGenericVnfsGenericVnfLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - Network
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - Network
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteNetworkGenericVnfsGenericVnfLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/l-interfaces:
    get:
      tags:
        - Network
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getNetworkGenericVnfsGenericVnfLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - Network
      summary: returns vlan
      description: returns vlan
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - Network
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - Network
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - Network
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - Network
      summary: returns vlans
      description: returns vlans
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - Network
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns l-interface
      description: returns l-interface
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - Network
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - Network
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}/l-interfaces:
    get:
      tags:
        - Network
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterfaceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces/lag-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns lag-interface
      description: returns lag-interface
      operationId: getNetworkGenericVnfsGenericVnfLagInterfacesLagInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing lag-interface
      description: |
        Create or update an existing lag-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/lag-interface"
    patch:
      tags:
        - Network
      summary: update an existing lag-interface
      description: |
        Update an existing lag-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLagInterfacesLagInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/lag-interface"
    delete:
      tags:
        - Network
      summary: delete an existing lag-interface
      description: delete an existing lag-interface
      operationId: deleteNetworkGenericVnfsGenericVnfLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/lag-interfaces:
    get:
      tags:
        - Network
      summary: returns lag-interfaces
      description: returns lag-interfaces
      operationId: getNetworkGenericVnfsGenericVnfLagInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: interface-role
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfVfModulesVfModuleRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: vf-module-id
          in: path
          description: Unique ID of vf-module.
          required: true
          type: string
          example: __VF-MODULE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfVfModulesVfModule.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfVfModulesVfModuleRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: vf-module-id
          in: path
          description: Unique ID of vf-module.
          required: true
          type: string
          example: __VF-MODULE-ID__
  /network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules/vf-module/{vf-module-id}:
    get:
      tags:
        - Network
      summary: returns vf-module
      description: returns vf-module
      operationId: getNetworkGenericVnfsGenericVnfVfModulesVfModule
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vf-module"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: vf-module-id
          in: path
          description: Unique ID of vf-module.
          required: true
          type: string
          example: __VF-MODULE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing vf-module
      description: |
        Create or update an existing vf-module.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfVfModulesVfModule
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: vf-module-id
          in: path
          description: Unique ID of vf-module.
          required: true
          type: string
          example: __VF-MODULE-ID__
        - name: body
          in: body
          description: vf-module object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfVfModulesVfModule.json)
          required: true
          schema:
            $ref: "#/definitions/vf-module"
    patch:
      tags:
        - Network
      summary: update an existing vf-module
      description: |
        Update an existing vf-module
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfVfModulesVfModule
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: vf-module-id
          in: path
          description: Unique ID of vf-module.
          required: true
          type: string
          example: __VF-MODULE-ID__
        - name: body
          in: body
          description: vf-module object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vf-module"
    delete:
      tags:
        - Network
      summary: delete an existing vf-module
      description: delete an existing vf-module
      operationId: deleteNetworkGenericVnfsGenericVnfVfModulesVfModule
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: vf-module-id
          in: path
          description: Unique ID of vf-module.
          required: true
          type: string
          example: __VF-MODULE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/vf-modules:
    get:
      tags:
        - Network
      summary: returns vf-modules
      description: returns vf-modules
      operationId: getNetworkGenericVnfsGenericVnfVfModules
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vf-modules"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: vf-module-id
          in: query
          description:
          required: false
          type: string
        - name: vf-module-name
          in: query
          description:
          required: false
          type: string
        - name: heat-stack-id
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-version
          in: query
          description:
          required: false
          type: string
        - name: contrail-service-instance-fqdn
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLicensesLicenseRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLicensesLicense.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfLicensesLicenseRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
  /network/generic-vnfs/generic-vnf/{vnf-id}/licenses/license/{group-uuid}/{resource-uuid}:
    get:
      tags:
        - Network
      summary: returns license
      description: returns license
      operationId: getNetworkGenericVnfsGenericVnfLicensesLicense
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/license"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
    put:
      tags:
        - Network
      summary: create or update an existing license
      description: |
        Create or update an existing license.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfLicensesLicense
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: license object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfLicensesLicense.json)
          required: true
          schema:
            $ref: "#/definitions/license"
    patch:
      tags:
        - Network
      summary: update an existing license
      description: |
        Update an existing license
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfLicensesLicense
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: license object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/license"
    delete:
      tags:
        - Network
      summary: delete an existing license
      description: delete an existing license
      operationId: deleteNetworkGenericVnfsGenericVnfLicensesLicense
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the license group the resource belongs to, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of a license resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/licenses:
    get:
      tags:
        - Network
      summary: returns licenses
      description: returns licenses
      operationId: getNetworkGenericVnfsGenericVnfLicenses
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/licenses"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: query
          description:
          required: false
          type: string
        - name: resource-uuid
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfEntitlementsEntitlementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfEntitlementsEntitlement.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkGenericVnfsGenericVnfEntitlementsEntitlementRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
  /network/generic-vnfs/generic-vnf/{vnf-id}/entitlements/entitlement/{group-uuid}/{resource-uuid}:
    get:
      tags:
        - Network
      summary: returns entitlement
      description: returns entitlement
      operationId: getNetworkGenericVnfsGenericVnfEntitlementsEntitlement
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/entitlement"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
    put:
      tags:
        - Network
      summary: create or update an existing entitlement
      description: |
        Create or update an existing entitlement.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnfEntitlementsEntitlement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: entitlement object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnfEntitlementsEntitlement.json)
          required: true
          schema:
            $ref: "#/definitions/entitlement"
    patch:
      tags:
        - Network
      summary: update an existing entitlement
      description: |
        Update an existing entitlement
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnfEntitlementsEntitlement
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: body
          in: body
          description: entitlement object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/entitlement"
    delete:
      tags:
        - Network
      summary: delete an existing entitlement
      description: delete an existing entitlement
      operationId: deleteNetworkGenericVnfsGenericVnfEntitlementsEntitlement
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: path
          description: Unique ID for the entitlement group the resource comes from, should be uuid.
          required: true
          type: string
          example: __GROUP-UUID__
        - name: resource-uuid
          in: path
          description: Unique ID of an entitlement resource. 
          required: true
          type: string
          example: __RESOURCE-UUID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}/entitlements:
    get:
      tags:
        - Network
      summary: returns entitlements
      description: returns entitlements
      operationId: getNetworkGenericVnfsGenericVnfEntitlements
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/entitlements"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: group-uuid
          in: query
          description:
          required: false
          type: string
        - name: resource-uuid
          in: query
          description:
          required: false
          type: string
  /network/generic-vnfs/generic-vnf/{vnf-id}:
    get:
      tags:
        - Network
      summary: returns generic-vnf
      description: returns generic-vnf
      operationId: getNetworkGenericVnfsGenericVnf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/generic-vnf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
    put:
      tags:
        - Network
      summary: create or update an existing generic-vnf
      description: |
        Create or update an existing generic-vnf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkGenericVnfsGenericVnf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: body
          in: body
          description: generic-vnf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkGenericVnfsGenericVnf.json)
          required: true
          schema:
            $ref: "#/definitions/generic-vnf"
    patch:
      tags:
        - Network
      summary: update an existing generic-vnf
      description: |
        Update an existing generic-vnf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkGenericVnfsGenericVnf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: body
          in: body
          description: generic-vnf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/generic-vnf"
    delete:
      tags:
        - Network
      summary: delete an existing generic-vnf
      description: delete an existing generic-vnf
      operationId: deleteNetworkGenericVnfsGenericVnf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: path
          description: Unique id of VNF.  This is unique across the graph.
          required: true
          type: string
          example: __VNF-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/generic-vnfs:
    get:
      tags:
        - Network
      summary: returns generic-vnfs
      description: returns generic-vnfs
      operationId: getNetworkGenericVnfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/generic-vnfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id
          in: query
          description:
          required: false
          type: string
        - name: vnf-name
          in: query
          description:
          required: false
          type: string
        - name: vnf-name2
          in: query
          description:
          required: false
          type: string
        - name: vnf-type
          in: query
          description:
          required: false
          type: string
        - name: service-id
          in: query
          description:
          required: false
          type: string
        - name: regional-resource-zone
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: heat-stack-id
          in: query
          description:
          required: false
          type: string
        - name: in-maint
          in: query
          description:
          required: false
          type: boolean
        - name: is-closed-loop-disabled
          in: query
          description:
          required: false
          type: boolean
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-id
          in: query
          description:
          required: false
          type: string
        - name: widget-model-version
          in: query
          description:
          required: false
          type: string
        - name: nf-type
          in: query
          description:
          required: false
          type: string
        - name: nf-function
          in: query
          description:
          required: false
          type: string
        - name: nf-role
          in: query
          description:
          required: false
          type: string
        - name: nf-naming-code
          in: query
          description:
          required: false
          type: string
  /network/lag-links/lag-link/{link-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkLagLinksLagLinkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: Alphabetical concatenation of lag-interface names
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLagLinksLagLink.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkLagLinksLagLinkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: Alphabetical concatenation of lag-interface names
          required: true
          type: string
          example: __LINK-NAME__
  /network/lag-links/lag-link/{link-name}:
    get:
      tags:
        - Network
      summary: returns lag-link
      description: returns lag-link
      operationId: getNetworkLagLinksLagLink
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-link"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: Alphabetical concatenation of lag-interface names
          required: true
          type: string
          example: __LINK-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing lag-link
      description: |
        Create or update an existing lag-link.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkLagLinksLagLink
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: Alphabetical concatenation of lag-interface names
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: lag-link object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLagLinksLagLink.json)
          required: true
          schema:
            $ref: "#/definitions/lag-link"
    patch:
      tags:
        - Network
      summary: update an existing lag-link
      description: |
        Update an existing lag-link
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkLagLinksLagLink
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: Alphabetical concatenation of lag-interface names
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: lag-link object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/lag-link"
    delete:
      tags:
        - Network
      summary: delete an existing lag-link
      description: delete an existing lag-link
      operationId: deleteNetworkLagLinksLagLink
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: Alphabetical concatenation of lag-interface names
          required: true
          type: string
          example: __LINK-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/lag-links:
    get:
      tags:
        - Network
      summary: returns lag-links
      description: returns lag-links
      operationId: getNetworkLagLinks
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-links"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: query
          description:
          required: false
          type: string
  /network/newvces/newvce/{vnf-id2}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvce.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - Network
      summary: returns vlan
      description: returns vlan
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - Network
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - Network
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - Network
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - Network
      summary: returns vlans
      description: returns vlans
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - Network
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns l-interface
      description: returns l-interface
      operationId: getNetworkNewvcesNewvceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - Network
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - Network
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteNetworkNewvcesNewvceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces/newvce/{vnf-id2}/l-interfaces:
    get:
      tags:
        - Network
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getNetworkNewvcesNewvceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /network/newvces/newvce/{vnf-id2}:
    get:
      tags:
        - Network
      summary: returns newvce
      description: returns newvce
      operationId: getNetworkNewvcesNewvce
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/newvce"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
    put:
      tags:
        - Network
      summary: create or update an existing newvce
      description: |
        Create or update an existing newvce.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNewvcesNewvce
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: body
          in: body
          description: newvce object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNewvcesNewvce.json)
          required: true
          schema:
            $ref: "#/definitions/newvce"
    patch:
      tags:
        - Network
      summary: update an existing newvce
      description: |
        Update an existing newvce
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNewvcesNewvce
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: body
          in: body
          description: newvce object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/newvce"
    delete:
      tags:
        - Network
      summary: delete an existing newvce
      description: delete an existing newvce
      operationId: deleteNetworkNewvcesNewvce
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: path
          description: Unique id of VNF, can't use same attribute name right now until we promote this new object
          required: true
          type: string
          example: __VNF-ID2__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/newvces:
    get:
      tags:
        - Network
      summary: returns newvces
      description: returns newvces
      operationId: getNetworkNewvces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/newvces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vnf-id2
          in: query
          description:
          required: false
          type: string
        - name: vnf-name
          in: query
          description:
          required: false
          type: string
        - name: vnf-name2
          in: query
          description:
          required: false
          type: string
        - name: vnf-type
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: heat-stack-id
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/software-versions/software-version/{software-version-id}:
    get:
      tags:
        - Network
      summary: returns software-version
      description: returns software-version
      operationId: getNetworkPnfsPnfSoftwareVersionsSoftwareVersion
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/software-version"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: software-version-id
          in: path
          description: Identifier of the software version
          required: true
          type: string
          example: __SOFTWARE-VERSION-ID__
    put:
      tags:
        - Network
      summary: create or update an existing software-version
      description: |
        Create or update an existing software-version.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfSoftwareVersionsSoftwareVersion
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: software-version-id
          in: path
          description: Identifier of the software version
          required: true
          type: string
          example: __SOFTWARE-VERSION-ID__
        - name: body
          in: body
          description: software-version object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfSoftwareVersionsSoftwareVersion.json)
          required: true
          schema:
            $ref: "#/definitions/software-version"
    patch:
      tags:
        - Network
      summary: update an existing software-version
      description: |
        Update an existing software-version
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfSoftwareVersionsSoftwareVersion
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: software-version-id
          in: path
          description: Identifier of the software version
          required: true
          type: string
          example: __SOFTWARE-VERSION-ID__
        - name: body
          in: body
          description: software-version object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/software-version"
    delete:
      tags:
        - Network
      summary: delete an existing software-version
      description: delete an existing software-version
      operationId: deleteNetworkPnfsPnfSoftwareVersionsSoftwareVersion
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: software-version-id
          in: path
          description: Identifier of the software version
          required: true
          type: string
          example: __SOFTWARE-VERSION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/software-versions:
    get:
      tags:
        - Network
      summary: returns software-versions
      description: returns software-versions
      operationId: getNetworkPnfsPnfSoftwareVersions
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/software-versions"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
  /network/pnfs/pnf/{pnf-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/sriov-pfs/sriov-pf/{pf-pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/sriov-pfs/sriov-pf/{pf-pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-pf
      description: returns sriov-pf
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-pf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-pf
      description: |
        Create or update an existing sriov-pf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: sriov-pf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-pf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-pf
      description: |
        Update an existing sriov-pf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: body
          in: body
          description: sriov-pf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-pf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-pf
      description: delete an existing sriov-pf
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceSriovPfsSriovPf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: path
          description: Identifier for the sriov-pf
          required: true
          type: string
          example: __PF-PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/sriov-pfs:
    get:
      tags:
        - Network
      summary: returns sriov-pfs
      description: returns sriov-pfs
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceSriovPfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-pfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pf-pci-id
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - Network
      summary: returns vlan
      description: returns vlan
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - Network
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - Network
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - Network
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - Network
      summary: returns vlans
      description: returns vlans
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - Network
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns l-interface
      description: returns l-interface
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - Network
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - Network
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteNetworkPnfsPnfPInterfacesPInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}/l-interfaces:
    get:
      tags:
        - Network
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getNetworkPnfsPnfPInterfacesPInterfaceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces/p-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns p-interface
      description: returns p-interface
      operationId: getNetworkPnfsPnfPInterfacesPInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/p-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing p-interface
      description: |
        Create or update an existing p-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfPInterfacesPInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: p-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfPInterfacesPInterface.json)
          required: true
          schema:
            $ref: "#/definitions/p-interface"
    patch:
      tags:
        - Network
      summary: update an existing p-interface
      description: |
        Update an existing p-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfPInterfacesPInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: p-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/p-interface"
    delete:
      tags:
        - Network
      summary: delete an existing p-interface
      description: delete an existing p-interface
      operationId: deleteNetworkPnfsPnfPInterfacesPInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the physical interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/p-interfaces:
    get:
      tags:
        - Network
      summary: returns p-interfaces
      description: returns p-interfaces
      operationId: getNetworkPnfsPnfPInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/p-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: prov-status
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlanL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans/vlan/{vlan-interface}:
    get:
      tags:
        - Network
      summary: returns vlan
      description: returns vlan
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
    put:
      tags:
        - Network
      summary: create or update an existing vlan
      description: |
        Create or update an existing vlan.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan.json)
          required: true
          schema:
            $ref: "#/definitions/vlan"
    patch:
      tags:
        - Network
      summary: update an existing vlan
      description: |
        Update an existing vlan
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: body
          in: body
          description: vlan object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan"
    delete:
      tags:
        - Network
      summary: delete an existing vlan
      description: delete an existing vlan
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlansVlan
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: path
          description: String that identifies the interface
          required: true
          type: string
          example: __VLAN-INTERFACE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/vlans:
    get:
      tags:
        - Network
      summary: returns vlans
      description: returns vlans
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceVlans
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlans"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: vlan-interface
          in: query
          description:
          required: false
          type: string
        - name: vlan-id-inner
          in: query
          description:
          required: false
          type: integer
          format: int64
        - name: vpn-key
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs/sriov-vf/{pci-id}:
    get:
      tags:
        - Network
      summary: returns sriov-vf
      description: returns sriov-vf
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sriov-vf
      description: |
        Create or update an existing sriov-vf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf.json)
          required: true
          schema:
            $ref: "#/definitions/sriov-vf"
    patch:
      tags:
        - Network
      summary: update an existing sriov-vf
      description: |
        Update an existing sriov-vf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: body
          in: body
          description: sriov-vf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sriov-vf"
    delete:
      tags:
        - Network
      summary: delete an existing sriov-vf
      description: delete an existing sriov-vf
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfsSriovVf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: path
          description: PCI ID used to identify the sriov-vf
          required: true
          type: string
          example: __PCI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/sriov-vfs:
    get:
      tags:
        - Network
      summary: returns sriov-vfs
      description: returns sriov-vfs
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceSriovVfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sriov-vfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: pci-id
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-mac-filter
          in: query
          description:
          required: false
          type: string
        - name: vf-vlan-strip
          in: query
          description:
          required: false
          type: boolean
        - name: neutron-network-id
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv4-address-list/{l3-interface-ipv4-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv4-address-list
      description: returns l3-interface-ipv4-address-list
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv4-address-list
      description: |
        Create or update an existing l3-interface-ipv4-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv4-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv4-address-list
      description: |
        Update an existing l3-interface-ipv4-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv4-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv4-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv4-address-list
      description: delete an existing l3-interface-ipv4-address-list
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv4AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv4-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV4-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressListRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}/l3-interface-ipv6-address-list/{l3-interface-ipv6-address}:
    get:
      tags:
        - Network
      summary: returns l3-interface-ipv6-address-list
      description: returns l3-interface-ipv6-address-list
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
    put:
      tags:
        - Network
      summary: create or update an existing l3-interface-ipv6-address-list
      description: |
        Create or update an existing l3-interface-ipv6-address-list.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList.json)
          required: true
          schema:
            $ref: "#/definitions/l3-interface-ipv6-address-list"
    patch:
      tags:
        - Network
      summary: update an existing l3-interface-ipv6-address-list
      description: |
        Update an existing l3-interface-ipv6-address-list
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: body
          in: body
          description: l3-interface-ipv6-address-list object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l3-interface-ipv6-address-list"
    delete:
      tags:
        - Network
      summary: delete an existing l3-interface-ipv6-address-list
      description: delete an existing l3-interface-ipv6-address-list
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterfaceL3InterfaceIpv6AddressList
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: l3-interface-ipv6-address
          in: path
          description: IP address
          required: true
          type: string
          example: __L3-INTERFACE-IPV6-ADDRESS__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces/l-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns l-interface
      description: returns l-interface
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing l-interface
      description: |
        Create or update an existing l-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterface.json)
          required: true
          schema:
            $ref: "#/definitions/l-interface"
    patch:
      tags:
        - Network
      summary: update an existing l-interface
      description: |
        Update an existing l-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: l-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/l-interface"
    delete:
      tags:
        - Network
      summary: delete an existing l-interface
      description: delete an existing l-interface
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterfaceLInterfacesLInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: path
          description: Name given to the interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}/l-interfaces:
    get:
      tags:
        - Network
      summary: returns l-interfaces
      description: returns l-interfaces
      operationId: getNetworkPnfsPnfLagInterfacesLagInterfaceLInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/l-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: macaddr
          in: query
          description:
          required: false
          type: string
        - name: network-name
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces/lag-interface/{interface-name}:
    get:
      tags:
        - Network
      summary: returns lag-interface
      description: returns lag-interface
      operationId: getNetworkPnfsPnfLagInterfacesLagInterface
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interface"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing lag-interface
      description: |
        Create or update an existing lag-interface.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfLagInterfacesLagInterface.json)
          required: true
          schema:
            $ref: "#/definitions/lag-interface"
    patch:
      tags:
        - Network
      summary: update an existing lag-interface
      description: |
        Update an existing lag-interface
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfLagInterfacesLagInterface
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: body
          in: body
          description: lag-interface object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/lag-interface"
    delete:
      tags:
        - Network
      summary: delete an existing lag-interface
      description: delete an existing lag-interface
      operationId: deleteNetworkPnfsPnfLagInterfacesLagInterface
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: path
          description: Name that identifies the link aggregate interface
          required: true
          type: string
          example: __INTERFACE-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/lag-interfaces:
    get:
      tags:
        - Network
      summary: returns lag-interfaces
      description: returns lag-interfaces
      operationId: getNetworkPnfsPnfLagInterfaces
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lag-interfaces"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: interface-name
          in: query
          description:
          required: false
          type: string
        - name: interface-id
          in: query
          description:
          required: false
          type: string
        - name: interface-role
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}/vrfs/vrf/{vrf-id}/route-targets/route-target/{global-route-target}/{route-target-role}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfVrfsVrfRouteTargetsRouteTargetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfVrfsVrfRouteTargetsRouteTarget.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfVrfsVrfRouteTargetsRouteTargetRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
  /network/pnfs/pnf/{pnf-name}/vrfs/vrf/{vrf-id}/route-targets/route-target/{global-route-target}/{route-target-role}:
    get:
      tags:
        - Network
      summary: returns route-target
      description: returns route-target
      operationId: getNetworkPnfsPnfVrfsVrfRouteTargetsRouteTarget
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/route-target"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
    put:
      tags:
        - Network
      summary: create or update an existing route-target
      description: |
        Create or update an existing route-target.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfVrfsVrfRouteTargetsRouteTarget
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: body
          in: body
          description: route-target object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfVrfsVrfRouteTargetsRouteTarget.json)
          required: true
          schema:
            $ref: "#/definitions/route-target"
    patch:
      tags:
        - Network
      summary: update an existing route-target
      description: |
        Update an existing route-target
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfVrfsVrfRouteTargetsRouteTarget
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: body
          in: body
          description: route-target object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/route-target"
    delete:
      tags:
        - Network
      summary: delete an existing route-target
      description: delete an existing route-target
      operationId: deleteNetworkPnfsPnfVrfsVrfRouteTargetsRouteTarget
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: global-route-target
          in: path
          description: Number used to identify an RT, globally unique in the network
          required: true
          type: string
          example: __GLOBAL-ROUTE-TARGET__
        - name: route-target-role
          in: path
          description: Role assigned to this route target
          required: true
          type: string
          example: __ROUTE-TARGET-ROLE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/vrfs/vrf/{vrf-id}/route-targets:
    get:
      tags:
        - Network
      summary: returns route-targets
      description: returns route-targets
      operationId: getNetworkPnfsPnfVrfsVrfRouteTargets
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/route-targets"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
  /network/pnfs/pnf/{pnf-name}/vrfs/vrf/{vrf-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPnfsPnfVrfsVrfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfVrfsVrf.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPnfsPnfVrfsVrfRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
  /network/pnfs/pnf/{pnf-name}/vrfs/vrf/{vrf-id}:
    get:
      tags:
        - Network
      summary: returns vrf
      description: returns vrf
      operationId: getNetworkPnfsPnfVrfsVrf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vrf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
    put:
      tags:
        - Network
      summary: create or update an existing vrf
      description: |
        Create or update an existing vrf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnfVrfsVrf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: body
          in: body
          description: vrf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnfVrfsVrf.json)
          required: true
          schema:
            $ref: "#/definitions/vrf"
    patch:
      tags:
        - Network
      summary: update an existing vrf
      description: |
        Update an existing vrf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnfVrfsVrf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: body
          in: body
          description: vrf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vrf"
    delete:
      tags:
        - Network
      summary: delete an existing vrf
      description: delete an existing vrf
      operationId: deleteNetworkPnfsPnfVrfsVrf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: path
          description: VRF UUID.
          required: true
          type: string
          example: __VRF-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs/pnf/{pnf-name}/vrfs:
    get:
      tags:
        - Network
      summary: returns vrfs
      description: returns vrfs
      operationId: getNetworkPnfsPnfVrfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vrfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: vrf-id
          in: query
          description:
          required: false
          type: string
  /network/pnfs/pnf/{pnf-name}:
    get:
      tags:
        - Network
      summary: returns pnf
      description: returns pnf
      operationId: getNetworkPnfsPnf
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/pnf"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing pnf
      description: |
        Create or update an existing pnf.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPnfsPnf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: body
          in: body
          description: pnf object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPnfsPnf.json)
          required: true
          schema:
            $ref: "#/definitions/pnf"
    patch:
      tags:
        - Network
      summary: update an existing pnf
      description: |
        Update an existing pnf
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPnfsPnf
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: body
          in: body
          description: pnf object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/pnf"
    delete:
      tags:
        - Network
      summary: delete an existing pnf
      description: delete an existing pnf
      operationId: deleteNetworkPnfsPnf
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: path
          description: unique name of Physical Network Function.
          required: true
          type: string
          example: __PNF-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/pnfs:
    get:
      tags:
        - Network
      summary: returns pnfs
      description: returns pnfs
      operationId: getNetworkPnfs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/pnfs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: pnf-name
          in: query
          description:
          required: false
          type: string
        - name: orchestration-status
          in: query
          description:
          required: false
          type: string
        - name: inv-status
          in: query
          description:
          required: false
          type: string
        - name: admin-status
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/physical-links/physical-link/{link-name}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkPhysicalLinksPhysicalLinkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPhysicalLinksPhysicalLink.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkPhysicalLinksPhysicalLinkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
          required: true
          type: string
          example: __LINK-NAME__
  /network/physical-links/physical-link/{link-name}:
    get:
      tags:
        - Network
      summary: returns physical-link
      description: returns physical-link
      operationId: getNetworkPhysicalLinksPhysicalLink
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/physical-link"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
          required: true
          type: string
          example: __LINK-NAME__
    put:
      tags:
        - Network
      summary: create or update an existing physical-link
      description: |
        Create or update an existing physical-link.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkPhysicalLinksPhysicalLink
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: physical-link object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkPhysicalLinksPhysicalLink.json)
          required: true
          schema:
            $ref: "#/definitions/physical-link"
    patch:
      tags:
        - Network
      summary: update an existing physical-link
      description: |
        Update an existing physical-link
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkPhysicalLinksPhysicalLink
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: body
          in: body
          description: physical-link object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/physical-link"
    delete:
      tags:
        - Network
      summary: delete an existing physical-link
      description: delete an existing physical-link
      operationId: deleteNetworkPhysicalLinksPhysicalLink
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: path
          description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
          required: true
          type: string
          example: __LINK-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/physical-links:
    get:
      tags:
        - Network
      summary: returns physical-links
      description: returns physical-links
      operationId: getNetworkPhysicalLinks
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/physical-links"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: link-name
          in: query
          description:
          required: false
          type: string
        - name: circuit-id
          in: query
          description:
          required: false
          type: string
  /network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkIpsecConfigurationsIpsecConfigurationRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkIpsecConfigurationsIpsecConfiguration.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkIpsecConfigurationsIpsecConfigurationRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
  /network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkIpsecConfigurationsIpsecConfigurationVigServersVigServerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: vig-address-type
          in: path
          description: indicates whether the VIG is for AVPN or INTERNET
          required: true
          type: string
          example: __VIG-ADDRESS-TYPE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkIpsecConfigurationsIpsecConfigurationVigServersVigServer.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkIpsecConfigurationsIpsecConfigurationVigServersVigServerRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: vig-address-type
          in: path
          description: indicates whether the VIG is for AVPN or INTERNET
          required: true
          type: string
          example: __VIG-ADDRESS-TYPE__
  /network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers/vig-server/{vig-address-type}:
    get:
      tags:
        - Network
      summary: returns vig-server
      description: returns vig-server
      operationId: getNetworkIpsecConfigurationsIpsecConfigurationVigServersVigServer
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vig-server"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: vig-address-type
          in: path
          description: indicates whether the VIG is for AVPN or INTERNET
          required: true
          type: string
          example: __VIG-ADDRESS-TYPE__
    put:
      tags:
        - Network
      summary: create or update an existing vig-server
      description: |
        Create or update an existing vig-server.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkIpsecConfigurationsIpsecConfigurationVigServersVigServer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: vig-address-type
          in: path
          description: indicates whether the VIG is for AVPN or INTERNET
          required: true
          type: string
          example: __VIG-ADDRESS-TYPE__
        - name: body
          in: body
          description: vig-server object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkIpsecConfigurationsIpsecConfigurationVigServersVigServer.json)
          required: true
          schema:
            $ref: "#/definitions/vig-server"
    patch:
      tags:
        - Network
      summary: update an existing vig-server
      description: |
        Update an existing vig-server
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkIpsecConfigurationsIpsecConfigurationVigServersVigServer
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: vig-address-type
          in: path
          description: indicates whether the VIG is for AVPN or INTERNET
          required: true
          type: string
          example: __VIG-ADDRESS-TYPE__
        - name: body
          in: body
          description: vig-server object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vig-server"
    delete:
      tags:
        - Network
      summary: delete an existing vig-server
      description: delete an existing vig-server
      operationId: deleteNetworkIpsecConfigurationsIpsecConfigurationVigServersVigServer
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: vig-address-type
          in: path
          description: indicates whether the VIG is for AVPN or INTERNET
          required: true
          type: string
          example: __VIG-ADDRESS-TYPE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}/vig-servers:
    get:
      tags:
        - Network
      summary: returns vig-servers
      description: returns vig-servers
      operationId: getNetworkIpsecConfigurationsIpsecConfigurationVigServers
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vig-servers"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: vig-address-type
          in: query
          description:
          required: false
          type: string
  /network/ipsec-configurations/ipsec-configuration/{ipsec-configuration-id}:
    get:
      tags:
        - Network
      summary: returns ipsec-configuration
      description: returns ipsec-configuration
      operationId: getNetworkIpsecConfigurationsIpsecConfiguration
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ipsec-configuration"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
    put:
      tags:
        - Network
      summary: create or update an existing ipsec-configuration
      description: |
        Create or update an existing ipsec-configuration.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkIpsecConfigurationsIpsecConfiguration
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: body
          in: body
          description: ipsec-configuration object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkIpsecConfigurationsIpsecConfiguration.json)
          required: true
          schema:
            $ref: "#/definitions/ipsec-configuration"
    patch:
      tags:
        - Network
      summary: update an existing ipsec-configuration
      description: |
        Update an existing ipsec-configuration
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkIpsecConfigurationsIpsecConfiguration
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: body
          in: body
          description: ipsec-configuration object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/ipsec-configuration"
    delete:
      tags:
        - Network
      summary: delete an existing ipsec-configuration
      description: delete an existing ipsec-configuration
      operationId: deleteNetworkIpsecConfigurationsIpsecConfiguration
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: path
          description: UUID of this configuration
          required: true
          type: string
          example: __IPSEC-CONFIGURATION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/ipsec-configurations:
    get:
      tags:
        - Network
      summary: returns ipsec-configurations
      description: returns ipsec-configurations
      operationId: getNetworkIpsecConfigurations
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ipsec-configurations"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: ipsec-configuration-id
          in: query
          description:
          required: false
          type: string
  /network/route-table-references/route-table-reference/{route-table-reference-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkRouteTableReferencesRouteTableReferenceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: route-table-reference-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __ROUTE-TABLE-REFERENCE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkRouteTableReferencesRouteTableReference.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkRouteTableReferencesRouteTableReferenceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: route-table-reference-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __ROUTE-TABLE-REFERENCE-ID__
  /network/route-table-references/route-table-reference/{route-table-reference-id}:
    get:
      tags:
        - Network
      summary: returns route-table-reference
      description: returns route-table-reference
      operationId: getNetworkRouteTableReferencesRouteTableReference
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/route-table-reference"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: route-table-reference-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __ROUTE-TABLE-REFERENCE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing route-table-reference
      description: |
        Create or update an existing route-table-reference.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkRouteTableReferencesRouteTableReference
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: route-table-reference-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __ROUTE-TABLE-REFERENCE-ID__
        - name: body
          in: body
          description: route-table-reference object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkRouteTableReferencesRouteTableReference.json)
          required: true
          schema:
            $ref: "#/definitions/route-table-reference"
    patch:
      tags:
        - Network
      summary: update an existing route-table-reference
      description: |
        Update an existing route-table-reference
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkRouteTableReferencesRouteTableReference
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: route-table-reference-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __ROUTE-TABLE-REFERENCE-ID__
        - name: body
          in: body
          description: route-table-reference object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/route-table-reference"
    delete:
      tags:
        - Network
      summary: delete an existing route-table-reference
      description: delete an existing route-table-reference
      operationId: deleteNetworkRouteTableReferencesRouteTableReference
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: route-table-reference-id
          in: path
          description: Route Table Reference id, UUID assigned to this instance.
          required: true
          type: string
          example: __ROUTE-TABLE-REFERENCE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/route-table-references:
    get:
      tags:
        - Network
      summary: returns route-table-references
      description: returns route-table-references
      operationId: getNetworkRouteTableReferences
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/route-table-references"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: route-table-reference-id
          in: query
          description:
          required: false
          type: string
        - name: route-table-reference-fqdn
          in: query
          description:
          required: false
          type: string
  /network/instance-groups/instance-group/{id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkInstanceGroupsInstanceGroupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: id
          in: path
          description: Instance Group ID, UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkInstanceGroupsInstanceGroup.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkInstanceGroupsInstanceGroupRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: id
          in: path
          description: Instance Group ID, UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
  /network/instance-groups/instance-group/{id}:
    get:
      tags:
        - Network
      summary: returns instance-group
      description: returns instance-group
      operationId: getNetworkInstanceGroupsInstanceGroup
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/instance-group"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: id
          in: path
          description: Instance Group ID, UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
    put:
      tags:
        - Network
      summary: create or update an existing instance-group
      description: |
        Create or update an existing instance-group.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkInstanceGroupsInstanceGroup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: id
          in: path
          description: Instance Group ID, UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: instance-group object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkInstanceGroupsInstanceGroup.json)
          required: true
          schema:
            $ref: "#/definitions/instance-group"
    patch:
      tags:
        - Network
      summary: update an existing instance-group
      description: |
        Update an existing instance-group
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkInstanceGroupsInstanceGroup
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: id
          in: path
          description: Instance Group ID, UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: body
          in: body
          description: instance-group object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/instance-group"
    delete:
      tags:
        - Network
      summary: delete an existing instance-group
      description: delete an existing instance-group
      operationId: deleteNetworkInstanceGroupsInstanceGroup
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: id
          in: path
          description: Instance Group ID, UUID assigned to this instance.
          required: true
          type: string
          example: __ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/instance-groups:
    get:
      tags:
        - Network
      summary: returns instance-groups
      description: returns instance-groups
      operationId: getNetworkInstanceGroups
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/instance-groups"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: id
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/zones/zone/{zone-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkZonesZoneRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: zone-id
          in: path
          description: Code assigned by AIC to the zone
          required: true
          type: string
          example: __ZONE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkZonesZone.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkZonesZoneRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: zone-id
          in: path
          description: Code assigned by AIC to the zone
          required: true
          type: string
          example: __ZONE-ID__
  /network/zones/zone/{zone-id}:
    get:
      tags:
        - Network
      summary: returns zone
      description: returns zone
      operationId: getNetworkZonesZone
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/zone"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: zone-id
          in: path
          description: Code assigned by AIC to the zone
          required: true
          type: string
          example: __ZONE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing zone
      description: |
        Create or update an existing zone.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkZonesZone
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: zone-id
          in: path
          description: Code assigned by AIC to the zone
          required: true
          type: string
          example: __ZONE-ID__
        - name: body
          in: body
          description: zone object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkZonesZone.json)
          required: true
          schema:
            $ref: "#/definitions/zone"
    patch:
      tags:
        - Network
      summary: update an existing zone
      description: |
        Update an existing zone
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkZonesZone
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: zone-id
          in: path
          description: Code assigned by AIC to the zone
          required: true
          type: string
          example: __ZONE-ID__
        - name: body
          in: body
          description: zone object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/zone"
    delete:
      tags:
        - Network
      summary: delete an existing zone
      description: delete an existing zone
      operationId: deleteNetworkZonesZone
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: zone-id
          in: path
          description: Code assigned by AIC to the zone
          required: true
          type: string
          example: __ZONE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/zones:
    get:
      tags:
        - Network
      summary: returns zones
      description: returns zones
      operationId: getNetworkZones
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/zones"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: zone-id
          in: query
          description:
          required: false
          type: string
        - name: design-type
          in: query
          description:
          required: false
          type: string
        - name: zone-context
          in: query
          description:
          required: false
          type: string
  /network/configurations/configuration/{configuration-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkConfigurationsConfigurationRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfiguration.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkConfigurationsConfigurationRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
  /network/configurations/configuration/{configuration-id}/metadata/metadatum/{metaname}:
    get:
      tags:
        - Network
      summary: returns metadatum
      description: returns metadatum
      operationId: getNetworkConfigurationsConfigurationMetadataMetadatum
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadatum"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
    put:
      tags:
        - Network
      summary: create or update an existing metadatum
      description: |
        Create or update an existing metadatum.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkConfigurationsConfigurationMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfigurationMetadataMetadatum.json)
          required: true
          schema:
            $ref: "#/definitions/metadatum"
    patch:
      tags:
        - Network
      summary: update an existing metadatum
      description: |
        Update an existing metadatum
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkConfigurationsConfigurationMetadataMetadatum
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: body
          in: body
          description: metadatum object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/metadatum"
    delete:
      tags:
        - Network
      summary: delete an existing metadatum
      description: delete an existing metadatum
      operationId: deleteNetworkConfigurationsConfigurationMetadataMetadatum
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: metaname
          in: path
          required: true
          type: string
          example: __METANAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/configurations/configuration/{configuration-id}/metadata:
    get:
      tags:
        - Network
      summary: returns metadata
      description: returns metadata
      operationId: getNetworkConfigurationsConfigurationMetadata
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/metadata"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: metaname
          in: query
          description:
          required: false
          type: string
  /network/configurations/configuration/{configuration-id}/forwarder-evcs/forwarder-evc/{forwarder-evc-id}/vlan-mappings/vlan-mapping/{vlan-mapping-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMappingRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: vlan-mapping-id
          in: path
          description: Key for vlan-mapping object.
          required: true
          type: string
          example: __VLAN-MAPPING-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMapping.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMappingRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: vlan-mapping-id
          in: path
          description: Key for vlan-mapping object.
          required: true
          type: string
          example: __VLAN-MAPPING-ID__
  /network/configurations/configuration/{configuration-id}/forwarder-evcs/forwarder-evc/{forwarder-evc-id}/vlan-mappings/vlan-mapping/{vlan-mapping-id}:
    get:
      tags:
        - Network
      summary: returns vlan-mapping
      description: returns vlan-mapping
      operationId: getNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMapping
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan-mapping"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: vlan-mapping-id
          in: path
          description: Key for vlan-mapping object.
          required: true
          type: string
          example: __VLAN-MAPPING-ID__
    put:
      tags:
        - Network
      summary: create or update an existing vlan-mapping
      description: |
        Create or update an existing vlan-mapping.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMapping
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: vlan-mapping-id
          in: path
          description: Key for vlan-mapping object.
          required: true
          type: string
          example: __VLAN-MAPPING-ID__
        - name: body
          in: body
          description: vlan-mapping object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMapping.json)
          required: true
          schema:
            $ref: "#/definitions/vlan-mapping"
    patch:
      tags:
        - Network
      summary: update an existing vlan-mapping
      description: |
        Update an existing vlan-mapping
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMapping
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: vlan-mapping-id
          in: path
          description: Key for vlan-mapping object.
          required: true
          type: string
          example: __VLAN-MAPPING-ID__
        - name: body
          in: body
          description: vlan-mapping object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan-mapping"
    delete:
      tags:
        - Network
      summary: delete an existing vlan-mapping
      description: delete an existing vlan-mapping
      operationId: deleteNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappingsVlanMapping
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: vlan-mapping-id
          in: path
          description: Key for vlan-mapping object.
          required: true
          type: string
          example: __VLAN-MAPPING-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/configurations/configuration/{configuration-id}/forwarder-evcs/forwarder-evc/{forwarder-evc-id}/vlan-mappings:
    get:
      tags:
        - Network
      summary: returns vlan-mappings
      description: returns vlan-mappings
      operationId: getNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcVlanMappings
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan-mappings"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
  /network/configurations/configuration/{configuration-id}/forwarder-evcs/forwarder-evc/{forwarder-evc-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfigurationForwarderEvcsForwarderEvc.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkConfigurationsConfigurationForwarderEvcsForwarderEvcRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
  /network/configurations/configuration/{configuration-id}/forwarder-evcs/forwarder-evc/{forwarder-evc-id}:
    get:
      tags:
        - Network
      summary: returns forwarder-evc
      description: returns forwarder-evc
      operationId: getNetworkConfigurationsConfigurationForwarderEvcsForwarderEvc
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/forwarder-evc"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
    put:
      tags:
        - Network
      summary: create or update an existing forwarder-evc
      description: |
        Create or update an existing forwarder-evc.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkConfigurationsConfigurationForwarderEvcsForwarderEvc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: body
          in: body
          description: forwarder-evc object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfigurationForwarderEvcsForwarderEvc.json)
          required: true
          schema:
            $ref: "#/definitions/forwarder-evc"
    patch:
      tags:
        - Network
      summary: update an existing forwarder-evc
      description: |
        Update an existing forwarder-evc
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkConfigurationsConfigurationForwarderEvcsForwarderEvc
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: body
          in: body
          description: forwarder-evc object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/forwarder-evc"
    delete:
      tags:
        - Network
      summary: delete an existing forwarder-evc
      description: delete an existing forwarder-evc
      operationId: deleteNetworkConfigurationsConfigurationForwarderEvcsForwarderEvc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: forwarder-evc-id
          in: path
          description: Key for forwarder-evc object
          required: true
          type: string
          example: __FORWARDER-EVC-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/configurations/configuration/{configuration-id}/forwarder-evcs:
    get:
      tags:
        - Network
      summary: returns forwarder-evcs
      description: returns forwarder-evcs
      operationId: getNetworkConfigurationsConfigurationForwarderEvcs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/forwarder-evcs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
  /network/configurations/configuration/{configuration-id}/evcs/evc/{evc-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkConfigurationsConfigurationEvcsEvcRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: evc-id
          in: path
          description: Unique/key field for the evc object
          required: true
          type: string
          example: __EVC-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfigurationEvcsEvc.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkConfigurationsConfigurationEvcsEvcRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: evc-id
          in: path
          description: Unique/key field for the evc object
          required: true
          type: string
          example: __EVC-ID__
  /network/configurations/configuration/{configuration-id}/evcs/evc/{evc-id}:
    get:
      tags:
        - Network
      summary: returns evc
      description: returns evc
      operationId: getNetworkConfigurationsConfigurationEvcsEvc
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/evc"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: evc-id
          in: path
          description: Unique/key field for the evc object
          required: true
          type: string
          example: __EVC-ID__
    put:
      tags:
        - Network
      summary: create or update an existing evc
      description: |
        Create or update an existing evc.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkConfigurationsConfigurationEvcsEvc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: evc-id
          in: path
          description: Unique/key field for the evc object
          required: true
          type: string
          example: __EVC-ID__
        - name: body
          in: body
          description: evc object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfigurationEvcsEvc.json)
          required: true
          schema:
            $ref: "#/definitions/evc"
    patch:
      tags:
        - Network
      summary: update an existing evc
      description: |
        Update an existing evc
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkConfigurationsConfigurationEvcsEvc
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: evc-id
          in: path
          description: Unique/key field for the evc object
          required: true
          type: string
          example: __EVC-ID__
        - name: body
          in: body
          description: evc object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/evc"
    delete:
      tags:
        - Network
      summary: delete an existing evc
      description: delete an existing evc
      operationId: deleteNetworkConfigurationsConfigurationEvcsEvc
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: evc-id
          in: path
          description: Unique/key field for the evc object
          required: true
          type: string
          example: __EVC-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/configurations/configuration/{configuration-id}/evcs:
    get:
      tags:
        - Network
      summary: returns evcs
      description: returns evcs
      operationId: getNetworkConfigurationsConfigurationEvcs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/evcs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
  /network/configurations/configuration/{configuration-id}:
    get:
      tags:
        - Network
      summary: returns configuration
      description: returns configuration
      operationId: getNetworkConfigurationsConfiguration
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/configuration"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
    put:
      tags:
        - Network
      summary: create or update an existing configuration
      description: |
        Create or update an existing configuration.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkConfigurationsConfiguration
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: body
          in: body
          description: configuration object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConfigurationsConfiguration.json)
          required: true
          schema:
            $ref: "#/definitions/configuration"
    patch:
      tags:
        - Network
      summary: update an existing configuration
      description: |
        Update an existing configuration
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkConfigurationsConfiguration
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: body
          in: body
          description: configuration object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/configuration"
    delete:
      tags:
        - Network
      summary: delete an existing configuration
      description: delete an existing configuration
      operationId: deleteNetworkConfigurationsConfiguration
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: path
          description: UUID assigned to configuration.
          required: true
          type: string
          example: __CONFIGURATION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/configurations:
    get:
      tags:
        - Network
      summary: returns configurations
      description: returns configurations
      operationId: getNetworkConfigurations
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/configurations"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: configuration-id
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/forwarding-paths/forwarding-path/{forwarding-path-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkForwardingPathsForwardingPathRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkForwardingPathsForwardingPath.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkForwardingPathsForwardingPathRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
  /network/forwarding-paths/forwarding-path/{forwarding-path-id}/forwarders/forwarder/{sequence}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkForwardingPathsForwardingPathForwardersForwarderRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: sequence
          in: path
          description: Unique ID of this segmentation
          required: true
          type: integer
          format: int32
          example: __SEQUENCE__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkForwardingPathsForwardingPathForwardersForwarder.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkForwardingPathsForwardingPathForwardersForwarderRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: sequence
          in: path
          description: Unique ID of this segmentation
          required: true
          type: integer
          format: int32
          example: __SEQUENCE__
  /network/forwarding-paths/forwarding-path/{forwarding-path-id}/forwarders/forwarder/{sequence}:
    get:
      tags:
        - Network
      summary: returns forwarder
      description: returns forwarder
      operationId: getNetworkForwardingPathsForwardingPathForwardersForwarder
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/forwarder"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: sequence
          in: path
          description: Unique ID of this segmentation
          required: true
          type: integer
          format: int32
          example: __SEQUENCE__
    put:
      tags:
        - Network
      summary: create or update an existing forwarder
      description: |
        Create or update an existing forwarder.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkForwardingPathsForwardingPathForwardersForwarder
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: sequence
          in: path
          description: Unique ID of this segmentation
          required: true
          type: integer
          format: int32
          example: __SEQUENCE__
        - name: body
          in: body
          description: forwarder object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkForwardingPathsForwardingPathForwardersForwarder.json)
          required: true
          schema:
            $ref: "#/definitions/forwarder"
    patch:
      tags:
        - Network
      summary: update an existing forwarder
      description: |
        Update an existing forwarder
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkForwardingPathsForwardingPathForwardersForwarder
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: sequence
          in: path
          description: Unique ID of this segmentation
          required: true
          type: integer
          format: int32
          example: __SEQUENCE__
        - name: body
          in: body
          description: forwarder object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/forwarder"
    delete:
      tags:
        - Network
      summary: delete an existing forwarder
      description: delete an existing forwarder
      operationId: deleteNetworkForwardingPathsForwardingPathForwardersForwarder
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: sequence
          in: path
          description: Unique ID of this segmentation
          required: true
          type: integer
          format: int32
          example: __SEQUENCE__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/forwarding-paths/forwarding-path/{forwarding-path-id}/forwarders:
    get:
      tags:
        - Network
      summary: returns forwarders
      description: returns forwarders
      operationId: getNetworkForwardingPathsForwardingPathForwarders
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/forwarders"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: sequence
          in: query
          description:
          required: false
          type: integer
          format: int32
  /network/forwarding-paths/forwarding-path/{forwarding-path-id}:
    get:
      tags:
        - Network
      summary: returns forwarding-path
      description: returns forwarding-path
      operationId: getNetworkForwardingPathsForwardingPath
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/forwarding-path"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
    put:
      tags:
        - Network
      summary: create or update an existing forwarding-path
      description: |
        Create or update an existing forwarding-path.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkForwardingPathsForwardingPath
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: body
          in: body
          description: forwarding-path object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkForwardingPathsForwardingPath.json)
          required: true
          schema:
            $ref: "#/definitions/forwarding-path"
    patch:
      tags:
        - Network
      summary: update an existing forwarding-path
      description: |
        Update an existing forwarding-path
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkForwardingPathsForwardingPath
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: body
          in: body
          description: forwarding-path object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/forwarding-path"
    delete:
      tags:
        - Network
      summary: delete an existing forwarding-path
      description: delete an existing forwarding-path
      operationId: deleteNetworkForwardingPathsForwardingPath
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: path
          description: Unique ID of this FP
          required: true
          type: string
          example: __FORWARDING-PATH-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/forwarding-paths:
    get:
      tags:
        - Network
      summary: returns forwarding-paths
      description: returns forwarding-paths
      operationId: getNetworkForwardingPaths
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/forwarding-paths"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: forwarding-path-id
          in: query
          description:
          required: false
          type: string
        - name: forwarding-path-name
          in: query
          description:
          required: false
          type: string
  /network/collections/collection/{collection-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkCollectionsCollectionRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: collection-id
          in: path
          description: Collection Object UUID
          required: true
          type: string
          example: __COLLECTION-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkCollectionsCollection.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkCollectionsCollectionRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: collection-id
          in: path
          description: Collection Object UUID
          required: true
          type: string
          example: __COLLECTION-ID__
  /network/collections/collection/{collection-id}:
    get:
      tags:
        - Network
      summary: returns collection
      description: returns collection
      operationId: getNetworkCollectionsCollection
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/collection"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: collection-id
          in: path
          description: Collection Object UUID
          required: true
          type: string
          example: __COLLECTION-ID__
    put:
      tags:
        - Network
      summary: create or update an existing collection
      description: |
        Create or update an existing collection.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkCollectionsCollection
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: collection-id
          in: path
          description: Collection Object UUID
          required: true
          type: string
          example: __COLLECTION-ID__
        - name: body
          in: body
          description: collection object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkCollectionsCollection.json)
          required: true
          schema:
            $ref: "#/definitions/collection"
    patch:
      tags:
        - Network
      summary: update an existing collection
      description: |
        Update an existing collection
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkCollectionsCollection
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: collection-id
          in: path
          description: Collection Object UUID
          required: true
          type: string
          example: __COLLECTION-ID__
        - name: body
          in: body
          description: collection object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/collection"
    delete:
      tags:
        - Network
      summary: delete an existing collection
      description: delete an existing collection
      operationId: deleteNetworkCollectionsCollection
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: collection-id
          in: path
          description: Collection Object UUID
          required: true
          type: string
          example: __COLLECTION-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/collections:
    get:
      tags:
        - Network
      summary: returns collections
      description: returns collections
      operationId: getNetworkCollections
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/collections"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: collection-id
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/vlan-tags/vlan-tag/{vlan-tag-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkVlanTagsVlanTagRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vlan-tag-id
          in: path
          description: Unique ID of the vlan-tag
          required: true
          type: string
          example: __VLAN-TAG-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVlanTagsVlanTag.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkVlanTagsVlanTagRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vlan-tag-id
          in: path
          description: Unique ID of the vlan-tag
          required: true
          type: string
          example: __VLAN-TAG-ID__
  /network/vlan-tags/vlan-tag/{vlan-tag-id}:
    get:
      tags:
        - Network
      summary: returns vlan-tag
      description: returns vlan-tag
      operationId: getNetworkVlanTagsVlanTag
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan-tag"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vlan-tag-id
          in: path
          description: Unique ID of the vlan-tag
          required: true
          type: string
          example: __VLAN-TAG-ID__
    put:
      tags:
        - Network
      summary: create or update an existing vlan-tag
      description: |
        Create or update an existing vlan-tag.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkVlanTagsVlanTag
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vlan-tag-id
          in: path
          description: Unique ID of the vlan-tag
          required: true
          type: string
          example: __VLAN-TAG-ID__
        - name: body
          in: body
          description: vlan-tag object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkVlanTagsVlanTag.json)
          required: true
          schema:
            $ref: "#/definitions/vlan-tag"
    patch:
      tags:
        - Network
      summary: update an existing vlan-tag
      description: |
        Update an existing vlan-tag
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkVlanTagsVlanTag
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vlan-tag-id
          in: path
          description: Unique ID of the vlan-tag
          required: true
          type: string
          example: __VLAN-TAG-ID__
        - name: body
          in: body
          description: vlan-tag object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/vlan-tag"
    delete:
      tags:
        - Network
      summary: delete an existing vlan-tag
      description: delete an existing vlan-tag
      operationId: deleteNetworkVlanTagsVlanTag
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: vlan-tag-id
          in: path
          description: Unique ID of the vlan-tag
          required: true
          type: string
          example: __VLAN-TAG-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/vlan-tags:
    get:
      tags:
        - Network
      summary: returns vlan-tags
      description: returns vlan-tags
      operationId: getNetworkVlanTags
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/vlan-tags"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
  /network/connectivities/connectivity/{connectivity-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkConnectivitiesConnectivityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: connectivity-id
          in: path
          description: Uniquely identifies this connectivity by id
          required: true
          type: string
          example: __CONNECTIVITY-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConnectivitiesConnectivity.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkConnectivitiesConnectivityRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: connectivity-id
          in: path
          description: Uniquely identifies this connectivity by id
          required: true
          type: string
          example: __CONNECTIVITY-ID__
  /network/connectivities/connectivity/{connectivity-id}:
    get:
      tags:
        - Network
      summary: returns connectivity
      description: returns connectivity
      operationId: getNetworkConnectivitiesConnectivity
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/connectivity"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: connectivity-id
          in: path
          description: Uniquely identifies this connectivity by id
          required: true
          type: string
          example: __CONNECTIVITY-ID__
    put:
      tags:
        - Network
      summary: create or update an existing connectivity
      description: |
        Create or update an existing connectivity.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkConnectivitiesConnectivity
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: connectivity-id
          in: path
          description: Uniquely identifies this connectivity by id
          required: true
          type: string
          example: __CONNECTIVITY-ID__
        - name: body
          in: body
          description: connectivity object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkConnectivitiesConnectivity.json)
          required: true
          schema:
            $ref: "#/definitions/connectivity"
    patch:
      tags:
        - Network
      summary: update an existing connectivity
      description: |
        Update an existing connectivity
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkConnectivitiesConnectivity
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: connectivity-id
          in: path
          description: Uniquely identifies this connectivity by id
          required: true
          type: string
          example: __CONNECTIVITY-ID__
        - name: body
          in: body
          description: connectivity object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/connectivity"
    delete:
      tags:
        - Network
      summary: delete an existing connectivity
      description: delete an existing connectivity
      operationId: deleteNetworkConnectivitiesConnectivity
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: connectivity-id
          in: path
          description: Uniquely identifies this connectivity by id
          required: true
          type: string
          example: __CONNECTIVITY-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/connectivities:
    get:
      tags:
        - Network
      summary: returns connectivities
      description: returns connectivities
      operationId: getNetworkConnectivities
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/connectivities"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: connectivity-id
          in: query
          description:
          required: false
          type: string
        - name: bandwidth-profile-name
          in: query
          description:
          required: false
          type: string
        - name: vpn-type
          in: query
          description:
          required: false
          type: string
        - name: color-aware
          in: query
          description:
          required: false
          type: string
        - name: coupling-flag
          in: query
          description:
          required: false
          type: string
        - name: etht-svc-name
          in: query
          description:
          required: false
          type: string
        - name: access-provider-id
          in: query
          description:
          required: false
          type: string
        - name: access-client-id
          in: query
          description:
          required: false
          type: string
        - name: access-topology-id
          in: query
          description:
          required: false
          type: string
        - name: access-node-id
          in: query
          description:
          required: false
          type: string
        - name: access-ltp-id
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/lan-port-configs/lan-port-config/{lan-port-config-id}/dhcp-services/dhcp-service/{dhcp-service-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkLanPortConfigsLanPortConfigDhcpServicesDhcpServiceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: dhcp-service-id
          in: path
          description: Uniquely identifies this dhcp-service by id
          required: true
          type: string
          example: __DHCP-SERVICE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLanPortConfigsLanPortConfigDhcpServicesDhcpService.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkLanPortConfigsLanPortConfigDhcpServicesDhcpServiceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: dhcp-service-id
          in: path
          description: Uniquely identifies this dhcp-service by id
          required: true
          type: string
          example: __DHCP-SERVICE-ID__
  /network/lan-port-configs/lan-port-config/{lan-port-config-id}/dhcp-services/dhcp-service/{dhcp-service-id}:
    get:
      tags:
        - Network
      summary: returns dhcp-service
      description: returns dhcp-service
      operationId: getNetworkLanPortConfigsLanPortConfigDhcpServicesDhcpService
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/dhcp-service"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: dhcp-service-id
          in: path
          description: Uniquely identifies this dhcp-service by id
          required: true
          type: string
          example: __DHCP-SERVICE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing dhcp-service
      description: |
        Create or update an existing dhcp-service.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkLanPortConfigsLanPortConfigDhcpServicesDhcpService
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: dhcp-service-id
          in: path
          description: Uniquely identifies this dhcp-service by id
          required: true
          type: string
          example: __DHCP-SERVICE-ID__
        - name: body
          in: body
          description: dhcp-service object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLanPortConfigsLanPortConfigDhcpServicesDhcpService.json)
          required: true
          schema:
            $ref: "#/definitions/dhcp-service"
    patch:
      tags:
        - Network
      summary: update an existing dhcp-service
      description: |
        Update an existing dhcp-service
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkLanPortConfigsLanPortConfigDhcpServicesDhcpService
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: dhcp-service-id
          in: path
          description: Uniquely identifies this dhcp-service by id
          required: true
          type: string
          example: __DHCP-SERVICE-ID__
        - name: body
          in: body
          description: dhcp-service object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/dhcp-service"
    delete:
      tags:
        - Network
      summary: delete an existing dhcp-service
      description: delete an existing dhcp-service
      operationId: deleteNetworkLanPortConfigsLanPortConfigDhcpServicesDhcpService
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: dhcp-service-id
          in: path
          description: Uniquely identifies this dhcp-service by id
          required: true
          type: string
          example: __DHCP-SERVICE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/lan-port-configs/lan-port-config/{lan-port-config-id}/dhcp-services:
    get:
      tags:
        - Network
      summary: returns dhcp-services
      description: returns dhcp-services
      operationId: getNetworkLanPortConfigsLanPortConfigDhcpServices
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/dhcp-services"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: dhcp-service-id
          in: query
          description:
          required: false
          type: string
        - name: server-ipv4-address
          in: query
          description:
          required: false
          type: string
        - name: server-ipv6-address
          in: query
          description:
          required: false
          type: string
        - name: dhcp-service-type
          in: query
          description:
          required: false
          type: string
        - name: domain-name
          in: query
          description:
          required: false
          type: string
  /network/lan-port-configs/lan-port-config/{lan-port-config-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkLanPortConfigsLanPortConfigRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLanPortConfigsLanPortConfig.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkLanPortConfigsLanPortConfigRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
  /network/lan-port-configs/lan-port-config/{lan-port-config-id}:
    get:
      tags:
        - Network
      summary: returns lan-port-config
      description: returns lan-port-config
      operationId: getNetworkLanPortConfigsLanPortConfig
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lan-port-config"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
    put:
      tags:
        - Network
      summary: create or update an existing lan-port-config
      description: |
        Create or update an existing lan-port-config.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkLanPortConfigsLanPortConfig
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: body
          in: body
          description: lan-port-config object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkLanPortConfigsLanPortConfig.json)
          required: true
          schema:
            $ref: "#/definitions/lan-port-config"
    patch:
      tags:
        - Network
      summary: update an existing lan-port-config
      description: |
        Update an existing lan-port-config
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkLanPortConfigsLanPortConfig
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: body
          in: body
          description: lan-port-config object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/lan-port-config"
    delete:
      tags:
        - Network
      summary: delete an existing lan-port-config
      description: delete an existing lan-port-config
      operationId: deleteNetworkLanPortConfigsLanPortConfig
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: path
          description: Uniquely identifies this lan-port-config by id
          required: true
          type: string
          example: __LAN-PORT-CONFIG-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/lan-port-configs:
    get:
      tags:
        - Network
      summary: returns lan-port-configs
      description: returns lan-port-configs
      operationId: getNetworkLanPortConfigs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/lan-port-configs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: lan-port-config-id
          in: query
          description:
          required: false
          type: string
        - name: lan-port-config-name
          in: query
          description:
          required: false
          type: string
        - name: device-id
          in: query
          description:
          required: false
          type: string
        - name: port-id
          in: query
          description:
          required: false
          type: string
        - name: ipv4-address
          in: query
          description:
          required: false
          type: string
        - name: ipv6-address
          in: query
          description:
          required: false
          type: string
        - name: vlan-tag
          in: query
          description:
          required: false
          type: string
  /network/network-resources/network-resource/{network-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkNetworkResourcesNetworkResourceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Uniquely identifies this network-resource by id
          required: true
          type: string
          example: __NETWORK-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNetworkResourcesNetworkResource.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkNetworkResourcesNetworkResourceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Uniquely identifies this network-resource by id
          required: true
          type: string
          example: __NETWORK-ID__
  /network/network-resources/network-resource/{network-id}:
    get:
      tags:
        - Network
      summary: returns network-resource
      description: returns network-resource
      operationId: getNetworkNetworkResourcesNetworkResource
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-resource"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Uniquely identifies this network-resource by id
          required: true
          type: string
          example: __NETWORK-ID__
    put:
      tags:
        - Network
      summary: create or update an existing network-resource
      description: |
        Create or update an existing network-resource.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkNetworkResourcesNetworkResource
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Uniquely identifies this network-resource by id
          required: true
          type: string
          example: __NETWORK-ID__
        - name: body
          in: body
          description: network-resource object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkNetworkResourcesNetworkResource.json)
          required: true
          schema:
            $ref: "#/definitions/network-resource"
    patch:
      tags:
        - Network
      summary: update an existing network-resource
      description: |
        Update an existing network-resource
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkNetworkResourcesNetworkResource
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Uniquely identifies this network-resource by id
          required: true
          type: string
          example: __NETWORK-ID__
        - name: body
          in: body
          description: network-resource object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/network-resource"
    delete:
      tags:
        - Network
      summary: delete an existing network-resource
      description: delete an existing network-resource
      operationId: deleteNetworkNetworkResourcesNetworkResource
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: path
          description: Uniquely identifies this network-resource by id
          required: true
          type: string
          example: __NETWORK-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/network-resources:
    get:
      tags:
        - Network
      summary: returns network-resources
      description: returns network-resources
      operationId: getNetworkNetworkResources
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/network-resources"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: network-id
          in: query
          description:
          required: false
          type: string
        - name: provider-id
          in: query
          description:
          required: false
          type: string
        - name: client-id
          in: query
          description:
          required: false
          type: string
        - name: te-topo-id
          in: query
          description:
          required: false
          type: string
  /network/site-resources/site-resource/{site-resource-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkSiteResourcesSiteResourceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-resource-id
          in: path
          description: Uniquely identifies this site-resource by id
          required: true
          type: string
          example: __SITE-RESOURCE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSiteResourcesSiteResource.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkSiteResourcesSiteResourceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-resource-id
          in: path
          description: Uniquely identifies this site-resource by id
          required: true
          type: string
          example: __SITE-RESOURCE-ID__
  /network/site-resources/site-resource/{site-resource-id}:
    get:
      tags:
        - Network
      summary: returns site-resource
      description: returns site-resource
      operationId: getNetworkSiteResourcesSiteResource
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/site-resource"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-resource-id
          in: path
          description: Uniquely identifies this site-resource by id
          required: true
          type: string
          example: __SITE-RESOURCE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing site-resource
      description: |
        Create or update an existing site-resource.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkSiteResourcesSiteResource
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-resource-id
          in: path
          description: Uniquely identifies this site-resource by id
          required: true
          type: string
          example: __SITE-RESOURCE-ID__
        - name: body
          in: body
          description: site-resource object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSiteResourcesSiteResource.json)
          required: true
          schema:
            $ref: "#/definitions/site-resource"
    patch:
      tags:
        - Network
      summary: update an existing site-resource
      description: |
        Update an existing site-resource
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkSiteResourcesSiteResource
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-resource-id
          in: path
          description: Uniquely identifies this site-resource by id
          required: true
          type: string
          example: __SITE-RESOURCE-ID__
        - name: body
          in: body
          description: site-resource object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/site-resource"
    delete:
      tags:
        - Network
      summary: delete an existing site-resource
      description: delete an existing site-resource
      operationId: deleteNetworkSiteResourcesSiteResource
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-resource-id
          in: path
          description: Uniquely identifies this site-resource by id
          required: true
          type: string
          example: __SITE-RESOURCE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/site-resources:
    get:
      tags:
        - Network
      summary: returns site-resources
      description: returns site-resources
      operationId: getNetworkSiteResources
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/site-resources"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: site-resource-id
          in: query
          description:
          required: false
          type: string
        - name: site-resource-name
          in: query
          description:
          required: false
          type: string
        - name: type
          in: query
          description:
          required: false
          type: string
        - name: role
          in: query
          description:
          required: false
          type: string
        - name: generated-site-id
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/sdwan-vpns/sdwan-vpn/{sdwan-vpn-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkSdwanVpnsSdwanVpnRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sdwan-vpn-id
          in: path
          description: Uniquely identifies this sdwan-vpn by id
          required: true
          type: string
          example: __SDWAN-VPN-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSdwanVpnsSdwanVpn.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkSdwanVpnsSdwanVpnRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sdwan-vpn-id
          in: path
          description: Uniquely identifies this sdwan-vpn by id
          required: true
          type: string
          example: __SDWAN-VPN-ID__
  /network/sdwan-vpns/sdwan-vpn/{sdwan-vpn-id}:
    get:
      tags:
        - Network
      summary: returns sdwan-vpn
      description: returns sdwan-vpn
      operationId: getNetworkSdwanVpnsSdwanVpn
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sdwan-vpn"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sdwan-vpn-id
          in: path
          description: Uniquely identifies this sdwan-vpn by id
          required: true
          type: string
          example: __SDWAN-VPN-ID__
    put:
      tags:
        - Network
      summary: create or update an existing sdwan-vpn
      description: |
        Create or update an existing sdwan-vpn.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkSdwanVpnsSdwanVpn
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sdwan-vpn-id
          in: path
          description: Uniquely identifies this sdwan-vpn by id
          required: true
          type: string
          example: __SDWAN-VPN-ID__
        - name: body
          in: body
          description: sdwan-vpn object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkSdwanVpnsSdwanVpn.json)
          required: true
          schema:
            $ref: "#/definitions/sdwan-vpn"
    patch:
      tags:
        - Network
      summary: update an existing sdwan-vpn
      description: |
        Update an existing sdwan-vpn
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkSdwanVpnsSdwanVpn
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sdwan-vpn-id
          in: path
          description: Uniquely identifies this sdwan-vpn by id
          required: true
          type: string
          example: __SDWAN-VPN-ID__
        - name: body
          in: body
          description: sdwan-vpn object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/sdwan-vpn"
    delete:
      tags:
        - Network
      summary: delete an existing sdwan-vpn
      description: delete an existing sdwan-vpn
      operationId: deleteNetworkSdwanVpnsSdwanVpn
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sdwan-vpn-id
          in: path
          description: Uniquely identifies this sdwan-vpn by id
          required: true
          type: string
          example: __SDWAN-VPN-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/sdwan-vpns:
    get:
      tags:
        - Network
      summary: returns sdwan-vpns
      description: returns sdwan-vpns
      operationId: getNetworkSdwanVpns
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/sdwan-vpns"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: sdwan-vpn-id
          in: query
          description:
          required: false
          type: string
        - name: sdwan-vpn-name
          in: query
          description:
          required: false
          type: string
        - name: vxlan-id
          in: query
          description:
          required: false
          type: string
        - name: topology
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/devices/device/{device-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkDevicesDeviceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: device-id
          in: path
          description: Uniquely identifies this device by id
          required: true
          type: string
          example: __DEVICE-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkDevicesDevice.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkDevicesDeviceRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: device-id
          in: path
          description: Uniquely identifies this device by id
          required: true
          type: string
          example: __DEVICE-ID__
  /network/devices/device/{device-id}:
    get:
      tags:
        - Network
      summary: returns device
      description: returns device
      operationId: getNetworkDevicesDevice
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/device"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: device-id
          in: path
          description: Uniquely identifies this device by id
          required: true
          type: string
          example: __DEVICE-ID__
    put:
      tags:
        - Network
      summary: create or update an existing device
      description: |
        Create or update an existing device.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkDevicesDevice
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: device-id
          in: path
          description: Uniquely identifies this device by id
          required: true
          type: string
          example: __DEVICE-ID__
        - name: body
          in: body
          description: device object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkDevicesDevice.json)
          required: true
          schema:
            $ref: "#/definitions/device"
    patch:
      tags:
        - Network
      summary: update an existing device
      description: |
        Update an existing device
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkDevicesDevice
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: device-id
          in: path
          description: Uniquely identifies this device by id
          required: true
          type: string
          example: __DEVICE-ID__
        - name: body
          in: body
          description: device object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/device"
    delete:
      tags:
        - Network
      summary: delete an existing device
      description: delete an existing device
      operationId: deleteNetworkDevicesDevice
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: device-id
          in: path
          description: Uniquely identifies this device by id
          required: true
          type: string
          example: __DEVICE-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/devices:
    get:
      tags:
        - Network
      summary: returns devices
      description: returns devices
      operationId: getNetworkDevices
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/devices"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: device-id
          in: query
          description:
          required: false
          type: string
        - name: esn
          in: query
          description:
          required: false
          type: string
        - name: device-name
          in: query
          description:
          required: false
          type: string
        - name: vendor
          in: query
          description:
          required: false
          type: string
        - name: class
          in: query
          description:
          required: false
          type: string
        - name: type
          in: query
          description:
          required: false
          type: string
        - name: version
          in: query
          description:
          required: false
          type: string
        - name: system-ip
          in: query
          description:
          required: false
          type: string
        - name: system-ipv4
          in: query
          description:
          required: false
          type: string
        - name: system-ipv6
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/wan-port-configs/wan-port-config/{wan-port-config-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkWanPortConfigsWanPortConfigRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: wan-port-config-id
          in: path
          description: Uniquely identifies this wan-port-config by id
          required: true
          type: string
          example: __WAN-PORT-CONFIG-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkWanPortConfigsWanPortConfig.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkWanPortConfigsWanPortConfigRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: wan-port-config-id
          in: path
          description: Uniquely identifies this wan-port-config by id
          required: true
          type: string
          example: __WAN-PORT-CONFIG-ID__
  /network/wan-port-configs/wan-port-config/{wan-port-config-id}:
    get:
      tags:
        - Network
      summary: returns wan-port-config
      description: returns wan-port-config
      operationId: getNetworkWanPortConfigsWanPortConfig
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/wan-port-config"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: wan-port-config-id
          in: path
          description: Uniquely identifies this wan-port-config by id
          required: true
          type: string
          example: __WAN-PORT-CONFIG-ID__
    put:
      tags:
        - Network
      summary: create or update an existing wan-port-config
      description: |
        Create or update an existing wan-port-config.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkWanPortConfigsWanPortConfig
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: wan-port-config-id
          in: path
          description: Uniquely identifies this wan-port-config by id
          required: true
          type: string
          example: __WAN-PORT-CONFIG-ID__
        - name: body
          in: body
          description: wan-port-config object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkWanPortConfigsWanPortConfig.json)
          required: true
          schema:
            $ref: "#/definitions/wan-port-config"
    patch:
      tags:
        - Network
      summary: update an existing wan-port-config
      description: |
        Update an existing wan-port-config
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkWanPortConfigsWanPortConfig
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: wan-port-config-id
          in: path
          description: Uniquely identifies this wan-port-config by id
          required: true
          type: string
          example: __WAN-PORT-CONFIG-ID__
        - name: body
          in: body
          description: wan-port-config object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/wan-port-config"
    delete:
      tags:
        - Network
      summary: delete an existing wan-port-config
      description: delete an existing wan-port-config
      operationId: deleteNetworkWanPortConfigsWanPortConfig
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: wan-port-config-id
          in: path
          description: Uniquely identifies this wan-port-config by id
          required: true
          type: string
          example: __WAN-PORT-CONFIG-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/wan-port-configs:
    get:
      tags:
        - Network
      summary: returns wan-port-configs
      description: returns wan-port-configs
      operationId: getNetworkWanPortConfigs
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/wan-port-configs"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: wan-port-config-id
          in: query
          description:
          required: false
          type: string
        - name: wan-port-config-name
          in: query
          description:
          required: false
          type: string
        - name: device-id
          in: query
          description:
          required: false
          type: string
        - name: ip-address
          in: query
          description:
          required: false
          type: string
        - name: ipv4-address
          in: query
          description:
          required: false
          type: string
        - name: ipv6-address
          in: query
          description:
          required: false
          type: string
        - name: port-type
          in: query
          description:
          required: false
          type: string
        - name: port-number
          in: query
          description:
          required: false
          type: string
        - name: device-port-id
          in: query
          description:
          required: false
          type: string
        - name: wan-port-id
          in: query
          description:
          required: false
          type: string
        - name: operational-status
          in: query
          description:
          required: false
          type: string
        - name: model-invariant-id
          in: query
          description:
          required: false
          type: string
        - name: model-version-id
          in: query
          description:
          required: false
          type: string
  /network/ext-aai-networks/ext-aai-network/{aai-id}/esr-system-info/{esr-system-info-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkExtAaiNetworksExtAaiNetworkEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkExtAaiNetworksExtAaiNetworkEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkExtAaiNetworksExtAaiNetworkEsrSystemInfoRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
  /network/ext-aai-networks/ext-aai-network/{aai-id}/esr-system-info/{esr-system-info-id}:
    get:
      tags:
        - Network
      summary: returns esr-system-info
      description: returns esr-system-info
      operationId: getNetworkExtAaiNetworksExtAaiNetworkEsrSystemInfo
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/esr-system-info"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
    put:
      tags:
        - Network
      summary: create or update an existing esr-system-info
      description: |
        Create or update an existing esr-system-info.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkExtAaiNetworksExtAaiNetworkEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkExtAaiNetworksExtAaiNetworkEsrSystemInfo.json)
          required: true
          schema:
            $ref: "#/definitions/esr-system-info"
    patch:
      tags:
        - Network
      summary: update an existing esr-system-info
      description: |
        Update an existing esr-system-info
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkExtAaiNetworksExtAaiNetworkEsrSystemInfo
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: body
          in: body
          description: esr-system-info object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/esr-system-info"
    delete:
      tags:
        - Network
      summary: delete an existing esr-system-info
      description: delete an existing esr-system-info
      operationId: deleteNetworkExtAaiNetworksExtAaiNetworkEsrSystemInfo
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: esr-system-info-id
          in: path
          description: Unique ID of esr system info.
          required: true
          type: string
          example: __ESR-SYSTEM-INFO-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/ext-aai-networks/ext-aai-network/{aai-id}/relationship-list/relationship:
    put:
      tags:
        - Network
      summary: see node definition for valid relationships
      operationId: createOrUpdateNetworkExtAaiNetworksExtAaiNetworkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkExtAaiNetworksExtAaiNetwork.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Network
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteNetworkExtAaiNetworksExtAaiNetworkRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
  /network/ext-aai-networks/ext-aai-network/{aai-id}:
    get:
      tags:
        - Network
      summary: returns ext-aai-network
      description: returns ext-aai-network
      operationId: getNetworkExtAaiNetworksExtAaiNetwork
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ext-aai-network"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
    put:
      tags:
        - Network
      summary: create or update an existing ext-aai-network
      description: |
        Create or update an existing ext-aai-network.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateNetworkExtAaiNetworksExtAaiNetwork
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: body
          in: body
          description: ext-aai-network object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/NetworkExtAaiNetworksExtAaiNetwork.json)
          required: true
          schema:
            $ref: "#/definitions/ext-aai-network"
    patch:
      tags:
        - Network
      summary: update an existing ext-aai-network
      description: |
        Update an existing ext-aai-network
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateNetworkExtAaiNetworksExtAaiNetwork
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: body
          in: body
          description: ext-aai-network object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/ext-aai-network"
    delete:
      tags:
        - Network
      summary: delete an existing ext-aai-network
      description: delete an existing ext-aai-network
      operationId: deleteNetworkExtAaiNetworksExtAaiNetwork
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: path
          description: Unique ID of the referenced AAI.
          required: true
          type: string
          example: __AAI-ID__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /network/ext-aai-networks:
    get:
      tags:
        - Network
      summary: returns ext-aai-networks
      description: returns ext-aai-networks
      operationId: getNetworkExtAaiNetworks
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/ext-aai-networks"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: aai-id
          in: query
          description:
          required: false
          type: string
  /common/contacts/contact/{contact-name}/relationship-list/relationship:
    put:
      tags:
        - Common
      summary: see node definition for valid relationships
      operationId: createOrUpdateCommonContactsContactRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: contact-name
          in: path
          description: Name of the contact
          required: true
          type: string
          example: __CONTACT-NAME__
        - name: body
          in: body
          description: relationship object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CommonContactsContact.json)
          required: true
          schema:
            $ref: "#/definitions/relationship-dict"
    delete:
      tags:
        - Common
      summary: delete an existing relationship
      description: delete an existing relationship
      operationId: deleteCommonContactsContactRelationshipListRelationship
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: contact-name
          in: path
          description: Name of the contact
          required: true
          type: string
          example: __CONTACT-NAME__
  /common/contacts/contact/{contact-name}:
    get:
      tags:
        - Common
      summary: returns contact
      description: returns contact
      operationId: getCommonContactsContact
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/contact"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: contact-name
          in: path
          description: Name of the contact
          required: true
          type: string
          example: __CONTACT-NAME__
    put:
      tags:
        - Common
      summary: create or update an existing contact
      description: |
        Create or update an existing contact.
        #
        Note! This PUT method has a corresponding PATCH method that can be used to update just a few of the fields of an existing object, rather than a full object replacement.  An example can be found in the [PATCH section] below
      operationId: createOrUpdateCommonContactsContact
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: contact-name
          in: path
          description: Name of the contact
          required: true
          type: string
          example: __CONTACT-NAME__
        - name: body
          in: body
          description: contact object that needs to be created or updated. [Valid relationship examples shown here](apidocs/relations/v16/CommonContactsContact.json)
          required: true
          schema:
            $ref: "#/definitions/contact"
    patch:
      tags:
        - Common
      summary: update an existing contact
      description: |
        Update an existing contact
        #
        Note:  Endpoints that are not devoted to object relationships support both PUT and PATCH operations.
        The PUT operation will entirely replace an existing object.
        The PATCH operation sends a "description of changes" for an existing object.  The entire set of changes must be applied.  An error result means no change occurs.
        #
        Other differences between PUT and PATCH are:
        #
        - For PATCH, you can send any of the values shown in sample REQUEST body.  There are no required values.
        - For PATCH, resource-id which is a required REQUEST body element for PUT, must not be sent.
        - PATCH cannot be used to update relationship elements; there are dedicated PUT operations for this.
      operationId: UpdateCommonContactsContact
      consumes:
        - application/json
      produces:
        - application/json
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: contact-name
          in: path
          description: Name of the contact
          required: true
          type: string
          example: __CONTACT-NAME__
        - name: body
          in: body
          description: contact object that needs to be updated.
          required: true
          schema:
            $ref: "#/patchDefinitions/contact"
    delete:
      tags:
        - Common
      summary: delete an existing contact
      description: delete an existing contact
      operationId: deleteCommonContactsContact
      consumes:
        - application/json
        - application/xml
      produces:
        - application/json
        - application/xml
      responses:
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
      parameters:
        - name: contact-name
          in: path
          description: Name of the contact
          required: true
          type: string
          example: __CONTACT-NAME__
        - name: resource-version
          in: query
          description: resource-version for concurrency
          required: true
          type: string
  /common/contacts:
    get:
      tags:
        - Common
      summary: returns contacts
      description: returns contacts
      operationId: getCommonContacts
      produces:
        - application/json
        - application/xml
      responses:
        "200":
          description: successful operation
          schema:
              $ref: "#/getDefinitions/contacts"
        "default":
          description: Response codes found in [response codes](https://wiki.web.att.com/pages/viewpage.action?pageId=607391054).
definitions:
  action:
    properties:
      action-type:
        type: string
      action-data:
        type: array
        items:          
          $ref: "#/definitions/action-data"
  action-data:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  actions:
    description: |
      APIs that are more action related than REST (e.g., notify, update).
    properties:
      update:
        type: object
        $ref: "#/definitions/update"
      notify:
        type: object
        $ref: "#/definitions/notify"
  aggregate-route:
    description: |
      Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&AI. 
      ###### Related Nodes
      - TO l3-network (PARENT of aggregate-route, aggregate-route BelongsTo l3-network, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this AGGREGATE-ROUTE is DELETED also
    required:
    - route-id
    - network-start-address
    - cidr-mask
    - ip-version
    properties:
      route-id:
        type: string
        description: Unique id of the aggregate-route instance
      network-start-address:
        type: string
        description: Name of the forwarding-path
      cidr-mask:
        type: string
        description: CIDR-mask for aggregate route subnet
      ip-version:
        type: string
        description: Identifies is aggregate route is ipv4 or ipv6
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  aggregate-routes:
    description: |
      Collection of aggregate routes.
    properties:
      aggregate-route:
        type: array
        items:          
          $ref: "#/definitions/aggregate-route"
  allotted-resource:
    description: |
      Represents a slice or partial piece of a resource that gets separately allotted
      ###### Related Nodes
      - TO allotted-resource( allotted-resource BindsTo allotted-resource, ONE2ONE)
      AAI-1925
      - TO generic-vnf( allotted-resource PartOf generic-vnf, MANY2MANY)
      - TO instance-group( allotted-resource MemberOf instance-group, MANY2MANY)
      - TO l-interface( allotted-resource Uses l-interface, ONE2MANY)
      - TO l3-network( allotted-resource PartOf l3-network, MANY2MANY)
      - TO network-policy( allotted-resource Uses network-policy, ONE2ONE)
      - TO p-interface( allotted-resource Uses p-interface, ONE2MANY)
      AAI-1925 For CCVPN Usecase
      - TO service-instance (PARENT of allotted-resource, allotted-resource BelongsTo service-instance, MANY2ONE)(4)
      - TO vlan( allotted-resource PartOf vlan, MANY2MANY)
      - TO vpn-binding( allotted-resource BelongsTo vpn-binding, MANY2MANY)
      - FROM allotted-resource( allotted-resource BindsTo allotted-resource, ONE2ONE)
      AAI-1925
      - FROM configuration( configuration Uses allotted-resource, ONE2ONE)(3)
      - FROM service-instance( service-instance Uses allotted-resource, MANY2MANY)
      - FROM site-resource( site-resource Uses allotted-resource, MANY2MANY)
      For CCVPN Usecase
      - FROM tunnel-xconnect (CHILD of allotted-resource, tunnel-xconnect BelongsTo allotted-resource, ONE2ONE)(1)

      -(1) IF this ALLOTTED-RESOURCE node is deleted, this FROM node is DELETED also
      -(3) IF this FROM node is deleted, this ALLOTTED-RESOURCE is DELETED also
      -(4) IF this TO node is deleted, this ALLOTTED-RESOURCE is DELETED also
    required:
    - id
    properties:
      id:
        type: string
        description: Allotted Resource id UUID assigned to this instance.
      description:
        type: string
        description: The descriptive information assigned to this allotted resource instance
      selflink:
        type: string
        description: Link back to more information in the controller
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Concurrency value
      orchestration-status:
        type: string
        description: Orchestration status
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      type:
        type: string
        description: Generic description of the type of allotted resource.
      role:
        type: string
        description: role in the network that this resource will be providing.
      allotted-resource-name:
        type: string
        description: Store the name of this allotted-resource.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this allotted-resource.
      access-client-id:
        type: string
        description: Store the id of the access client of this allotted-resource.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this allotted-resource.
      access-node-id:
        type: string
        description: Store the id of the access node of this allotted-resource.
      access-ltp-id:
        type: string
        description: Store the id of the access ltp of this allotted-resource.
      cvlan:
        type: string
        description: Store the cvlan of this allotted-resource.
      vpn-name:
        type: string
        description: Store the vpn-name of this allotted-resource.
      tunnel-xconnects:
        type: array
        items:
          $ref: "#/definitions/tunnel-xconnect"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  allotted-resources:
    description: |
      This object is used to store slices of services being offered
    properties:
      allotted-resource:
        type: array
        items:          
          $ref: "#/definitions/allotted-resource"
  availability-zone:
    description: |
      Availability zone, a collection of compute hosts/pservers
      ###### Related Nodes
      - TO cloud-region (PARENT of availability-zone, availability-zone BelongsTo cloud-region, MANY2ONE)(4)
      - TO complex( availability-zone LocatedIn complex, MANY2ONE)
      - TO service-capability( availability-zone AppliesTo service-capability, MANY2MANY)
      - FROM ctag-pool( ctag-pool AppliesTo availability-zone, MANY2MANY)
      - FROM dvs-switch( dvs-switch AppliesTo availability-zone, MANY2MANY)
      - FROM generic-vnf( generic-vnf Uses availability-zone, MANY2MANY)
      - FROM pserver( pserver MemberOf availability-zone, MANY2ONE)
      - FROM vce( vce Uses availability-zone, MANY2MANY)

      -(4) IF this TO node is deleted, this AVAILABILITY-ZONE is DELETED also
      -AVAILABILITY-ZONE cannot be deleted if related to CTAG-POOL,DVS-SWITCH,GENERIC-VNF,PSERVER,VCE
    required:
    - availability-zone-name
    - hypervisor-type
    properties:
      availability-zone-name:
        type: string
        description: Name of the availability zone.  Unique across a cloud region
      hypervisor-type:
        type: string
        description: Type of hypervisor.  Source of truth should define valid values.
      operational-status:
        type: string
        description: State that indicates whether the availability zone should be used, etc.  Source of truth should define valid values.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  availability-zones:
    description: |
      Collection of availability zones
    properties:
      availability-zone:
        type: array
        items:          
          $ref: "#/definitions/availability-zone"
  az-and-dvs-switches:
    properties:
      dvs-switches:
        type: object
        $ref: "#/definitions/dvs-switches"
      availability-zone:
        type: object
        $ref: "#/definitions/availability-zone"
  business:
    description: |
      Namespace for business related constructs
    properties:
      connectors:
        type: array
        items:
          $ref: "#/definitions/connector"
      customers:
        type: array
        items:
          $ref: "#/definitions/customer"
      lines-of-business:
        type: array
        items:
          $ref: "#/definitions/line-of-business"
      owning-entities:
        type: array
        items:
          $ref: "#/definitions/owning-entity"
      platforms:
        type: array
        items:
          $ref: "#/definitions/platform"
      projects:
        type: array
        items:
          $ref: "#/definitions/project"
      sp-partners:
        type: array
        items:
          $ref: "#/definitions/sp-partner"
  class-of-service:
    description: |
      ###### Related Nodes
      - TO site-pair (PARENT of class-of-service, class-of-service BelongsTo site-pair, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this CLASS-OF-SERVICE is DELETED also
    required:
    - cos
    properties:
      cos:
        type: string
        description: unique identifier of probe
      probe-id:
        type: string
        description: identifier of probe
      probe-type:
        type: string
        description: type of probe
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  classes-of-service:
    description: |
      class-of-service of probe
    properties:
      class-of-service:
        type: array
        items:          
          $ref: "#/definitions/class-of-service"
  cloud-infrastructure:
    description: |
      Namespace for cloud infrastructure.
    properties:
      complexes:
        type: array
        items:
          $ref: "#/definitions/complex"
      cloud-regions:
        type: array
        items:
          $ref: "#/definitions/cloud-region"
      network-profiles:
        type: array
        items:
          $ref: "#/definitions/network-profile"
      pservers:
        type: array
        items:
          $ref: "#/definitions/pserver"
      virtual-data-centers:
        type: array
        items:
          $ref: "#/definitions/virtual-data-center"
      operational-environments:
        type: array
        items:
          $ref: "#/definitions/operational-environment"
      network-technologies:
        type: array
        items:
          $ref: "#/definitions/network-technology"
  cloud-region:
    description: |
      cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&T's AIC.
      ###### Related Nodes
      - TO complex( cloud-region LocatedIn complex, MANY2ONE)
      - TO instance-group( cloud-region Uses instance-group, ONE2MANY)
      - TO l3-network( cloud-region Uses l3-network, MANY2MANY)
      - TO network-technology( cloud-region Uses network-technology, MANY2MANY)
      - TO zone( cloud-region LocatedIn zone, MANY2ONE)
      - FROM availability-zone (CHILD of cloud-region, availability-zone BelongsTo cloud-region, MANY2ONE)(1)
      - FROM dvs-switch (CHILD of cloud-region, dvs-switch BelongsTo cloud-region, MANY2ONE)
      - FROM esr-system-info (CHILD of cloud-region, esr-system-info BelongsTo cloud-region, MANY2ONE)(1)
      - FROM flavor (CHILD of cloud-region, flavor BelongsTo cloud-region, MANY2ONE)
      - FROM generic-vnf( generic-vnf LocatedIn cloud-region, MANY2ONE)
      - FROM group-assignment (CHILD of cloud-region, group-assignment BelongsTo cloud-region, MANY2ONE)
      - FROM hpa-capability (CHILD of cloud-region, hpa-capability BelongsTo cloud-region, MANY2ONE)
      - FROM image (CHILD of cloud-region, image BelongsTo cloud-region, MANY2ONE)
      - FROM logical-link( logical-link LocatedIn cloud-region, MANY2MANY)
      - FROM oam-network (CHILD of cloud-region, oam-network BelongsTo cloud-region, MANY2ONE)
      - FROM pserver( pserver LocatedIn cloud-region, MANY2ONE)
      - FROM snapshot (CHILD of cloud-region, snapshot BelongsTo cloud-region, MANY2ONE)
      - FROM tenant (CHILD of cloud-region, tenant BelongsTo cloud-region, MANY2ONE)
      - FROM vip-ipv4-address-list (CHILD of cloud-region, vip-ipv4-address-list BelongsTo cloud-region, MANY2ONE)
      - FROM vip-ipv6-address-list (CHILD of cloud-region, vip-ipv6-address-list BelongsTo cloud-region, MANY2ONE)
      - FROM vlan-tag( vlan-tag BelongsTo cloud-region, MANY2ONE)
      - FROM volume-group (CHILD of cloud-region, volume-group BelongsTo cloud-region, MANY2ONE)

      -(1) IF this CLOUD-REGION node is deleted, this FROM node is DELETED also
      -CLOUD-REGION cannot be deleted if related to DVS-SWITCH,FLAVOR,GROUP-ASSIGNMENT,HPA-CAPABILITY,IMAGE,OAM-NETWORK,SNAPSHOT,TENANT,VIP-IPV4-ADDRESS-LIST,VIP-IPV6-ADDRESS-LIST,VOLUME-GROUP
    required:
    - cloud-owner
    - cloud-region-id
    - orchestration-disabled
    - in-maint
    properties:
      cloud-owner:
        type: string
        description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
      cloud-region-id:
        type: string
        description: Identifier used by the vendor for the region. Second part of composite key
      cloud-type:
        type: string
        description: Type of the cloud (e.g., openstack)
      owner-defined-type:
        type: string
        description: Cloud-owner defined type indicator (e.g., dcp, lcp)
      cloud-region-version:
        type: string
        description: Software version employed at the site.  NOTE - THIS FIELD IS NOT KEPT UP TO DATE.
      identity-url:
        type: string
        description: URL of the keystone identity service
      cloud-zone:
        type: string
        description: Zone where the cloud is homed.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED.
      complex-name:
        type: string
        description: complex name for cloud-region instance.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED.
      sriov-automation:
        type: string
        description: Whether the cloud region supports (true) or does not support (false) SR-IOV automation.
      cloud-extra-info:
        type: string
        description: ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM.
      upgrade-cycle:
        type: string
        description: Upgrade cycle for the cloud region. For AIC regions upgrade cycle is designated by A,B,C etc.
      orchestration-disabled:
        type: boolean
        description: Used to indicate whether orchestration is enabled for this cloud-region.
      in-maint:
        type: boolean
        description: Used to indicate whether or not cloud-region object is in maintenance mode.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      volume-groups:
        type: array
        items:
          $ref: "#/definitions/volume-group"
      tenants:
        type: array
        items:
          $ref: "#/definitions/tenant"
      flavors:
        type: array
        items:
          $ref: "#/definitions/flavor"
      group-assignments:
        type: array
        items:
          $ref: "#/definitions/group-assignment"
      snapshots:
        type: array
        items:
          $ref: "#/definitions/snapshot"
      images:
        type: array
        items:
          $ref: "#/definitions/image"
      dvs-switches:
        type: array
        items:
          $ref: "#/definitions/dvs-switch"
      oam-networks:
        type: array
        items:
          $ref: "#/definitions/oam-network"
      availability-zones:
        type: array
        items:
          $ref: "#/definitions/availability-zone"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      vip-ipv4-address-list:
        type: array
        items:          
          $ref: "#/definitions/vip-ipv4-address-list"
      vip-ipv6-address-list:
        type: array
        items:          
          $ref: "#/definitions/vip-ipv6-address-list"
      hpa-capabilities:
        type: array
        items:
          $ref: "#/definitions/hpa-capability"
        description: List of cloud-region specific HPA Capabilities
      esr-system-info-list:
        type: array
        items:
          $ref: "#/definitions/esr-system-info"
  cloud-regions:
    properties:
      cloud-region:
        type: array
        items:          
          $ref: "#/definitions/cloud-region"
  collection:
    description: |
      represents the collection resource in the TOSCA model
      ###### Related Nodes
      - FROM instance-group( instance-group BelongsTo collection, ONE2ONE)
      - FROM service-instance( service-instance ComposedOf collection, ONE2ONE)
    required:
    - collection-id
    properties:
      collection-id:
        type: string
        description: Collection Object UUID
      model-invariant-id:
        type: string
        description: ASDC model id for this resource or service model
        also requires: model-version-id
      model-version-id:
        type: string
        description: Model Version
        also requires: model-invariant-id
      collection-name:
        type: string
        description: collection name
      collection-type:
        type: string
        description: Collection type
      collection-role:
        type: string
        description: Collection Role
      collection-function:
        type: string
        description: Collection function
      orchestration-status:
        type: string
        description: orchestration status
      collection-customization-id:
        type: string
        description: Captures the id of all the configuration used to customize the resource for the service
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  collections:
    properties:
      collection:
        type: array
        items:          
          $ref: "#/definitions/collection"
  common:
    description: |
      Namespace for common inventory resources.
    properties:
      contacts:
        type: array
        items:
          $ref: "#/definitions/contact"
  complex:
    description: |
      Collection of physical locations that can house cloud-regions.
      ###### Related Nodes
      - TO l3-network( complex Uses l3-network, MANY2MANY)
      - FROM availability-zone( availability-zone LocatedIn complex, MANY2ONE)
      - FROM cloud-region( cloud-region LocatedIn complex, MANY2ONE)
      - FROM ctag-pool (CHILD of complex, ctag-pool BelongsTo complex, MANY2ONE)(1)
      - FROM generic-vnf( generic-vnf LocatedIn complex, MANY2MANY)
      - FROM oam-network( oam-network AppliesTo complex, MANY2MANY)
      - FROM pnf( pnf LocatedIn complex, MANY2ONE)
      - FROM pserver( pserver LocatedIn complex, MANY2ONE)
      - FROM site-resource( site-resource Uses complex, MANY2MANY)
      For CCVPN Usecase
      - FROM vce( vce LocatedIn complex, MANY2MANY)
      - FROM volume-group( volume-group LocatedIn complex, MANY2ONE)
      - FROM vpls-pe( vpls-pe LocatedIn complex, MANY2ONE)
      - FROM zone( zone LocatedIn complex, MANY2ONE)

      -(1) IF this COMPLEX node is deleted, this FROM node is DELETED also
      -COMPLEX cannot be deleted if related to AVAILABILITY-ZONE,CLOUD-REGION,GENERIC-VNF,OAM-NETWORK,PNF,PSERVER,VCE,VOLUME-GROUP,VPLS-PE,ZONE
    required:
    - physical-location-id
    - physical-location-type
    - street1
    - city
    - postal-code
    - country
    - region
    properties:
      physical-location-id:
        type: string
        description: Unique identifier for physical location, e.g., CLLI
      data-center-code:
        type: string
        description: Data center code which can be an alternate way to identify a complex
      complex-name:
        type: string
        description: Gamma complex name for LCP instance.
      identity-url:
        type: string
        description: URL of the keystone identity service
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      physical-location-type:
        type: string
        description: Type, e.g., central office, data center.
      street1:
        type: string
      street2:
        type: string
      city:
        type: string
      state:
        type: string
      postal-code:
        type: string
      country:
        type: string
      region:
        type: string
      latitude:
        type: string
      longitude:
        type: string
      elevation:
        type: string
      lata:
        type: string
      ctag-pools:
        type: array
        items:
          $ref: "#/definitions/ctag-pool"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  complexes:
    description: |
      Collection of physical locations that can house cloud-regions.
    properties:
      complex:
        type: array
        items:          
          $ref: "#/definitions/complex"
  configuration:
    description: |
      Generic configuration object.
      ###### Related Nodes
      - TO allotted-resource( configuration Uses allotted-resource, ONE2ONE)(2)
      - TO configuration( configuration BindsTo configuration, ONE2ONE)
      - TO l-interface( configuration AppliesTo l-interface, ONE2MANY)
      - TO l3-network( configuration PartOf l3-network, MANY2MANY)
      - TO logical-link( configuration Uses logical-link, ONE2MANY)(2)
      - TO pnf( configuration AppliesTo pnf, MANY2MANY)
      - TO vnfc( configuration Uses vnfc, ONE2ONE)(4)
      - TO vpn-binding( configuration Uses vpn-binding, MANY2ONE)
      - TO vrf( configuration Uses vrf, ONE2MANY)
      A Configuration uses VRFs
      - FROM configuration( configuration BindsTo configuration, ONE2ONE)
      - FROM evc (CHILD of configuration, evc BelongsTo configuration, ONE2ONE)(1)
      - FROM forwarder( forwarder Uses configuration, ONE2ONE)(3)
      - FROM forwarder-evc (CHILD of configuration, forwarder-evc BelongsTo configuration, ONE2ONE)(1)
      - FROM forwarding-path( forwarding-path Uses configuration, ONE2ONE)(3)
      - FROM generic-vnf( generic-vnf Uses configuration, ONE2MANY)(3)
      - FROM metadatum (CHILD of configuration, metadatum BelongsTo configuration, MANY2ONE)(1)
      - FROM service-instance( service-instance Uses configuration, ONE2MANY)
      - FROM service-instance( service-instance ComposedOf configuration, MANY2MANY)

      -(1) IF this CONFIGURATION node is deleted, this FROM node is DELETED also
      -(2) IF this CONFIGURATION node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this CONFIGURATION is DELETED also
      -(4) IF this TO node is deleted, this CONFIGURATION is DELETED also
    required:
    - configuration-id
    - configuration-type
    properties:
      configuration-id:
        type: string
        description: UUID assigned to configuration.
      management-option:
        type: string
        description: Indicates the entity that will manage this feature. Could be an organization or the name of the application as well.
      configuration-name:
        type: string
        description: Name of the configuration.
      configuration-type:
        type: string
        description: port-mirroring-configuration.
      configuration-sub-type:
        type: string
        description: vprobe, pprobe.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      orchestration-status:
        type: string
        description: Orchestration status of the configuration.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.
      configuration-selflink:
        type: string
        description: URL to endpoint where AAI can get more details from SDN-GC.
      model-customization-id:
        type: string
        description: id of  the configuration used to customize the resource
      tunnel-bandwidth:
        type: string
        description: DHV Site Effective Bandwidth
      vendor-allowed-max-bandwidth:
        type: string
        description: Velocloud Nominal Throughput - VNT
      config-policy-name:
        type: string
        description: Used to capture the name of the fabric configuration policy that was used to generate the payload sent to PINC for fabric configuration.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/definitions/metadatum"
      forwarder-evcs:
        type: array
        items:
          $ref: "#/definitions/forwarder-evc"
      evcs:
        type: array
        items:
          $ref: "#/definitions/evc"
  configurations:
    description: |
      Collection of configurations
    properties:
      configuration:
        type: array
        items:          
          $ref: "#/definitions/configuration"
  connectivities:
    description: |
      Collection of connectivities
    properties:
      connectivity:
        type: array
        items:          
          $ref: "#/definitions/connectivity"
  connectivity:
    description: |
      Instance of a connectivity
      ###### Related Nodes
      - TO ext-aai-network( connectivity BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( connectivity PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - TO vpn-binding( connectivity PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this CONNECTIVITY node is deleted, this TO node is DELETED also
    required:
    - connectivity-id
    properties:
      connectivity-id:
        type: string
        description: Uniquely identifies this connectivity by id
      bandwidth-profile-name:
        type: string
        description: Store the name of a bandwidth profile.
      vpn-type:
        type: string
        description: Store the type of a bandwidth profile.
      cir:
        type: string
        description: Store the CIR of this connectivity.
      eir:
        type: string
        description: Store the EIR of this connectivity.
      cbs:
        type: string
        description: Store the CBS of this connectivity.
      ebs:
        type: string
        description: Store the EBS of this connectivity.
      color-aware:
        type: string
        description: Store the color-awareness of this connectivity.
      coupling-flag:
        type: string
        description: Store the coupling flag of this connectivity.
      etht-svc-name:
        type: string
        description: The ethernet service name for this connectivity.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this connectivity.
      access-client-id:
        type: string
        description: Store the id of the access client of this connectivity.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this connectivity.
      access-node-id:
        type: string
        description: Store the id of the access node of this connectivity.
      access-ltp-id:
        type: string
        description: Store the id of the access ltp of this connectivity.
      connectivity-selflink:
        type: string
        description: Store the link to get more information for this connectivity.
      cvlan:
        type: string
        description: Store the cvlan for this connectivity.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  connector:
    description: |
      Collection of resource instances used to connect a variety of disparate inventory widgets
      ###### Related Nodes
      - TO virtual-data-center( connector LocatedIn virtual-data-center, MANY2MANY)
      - FROM metadatum (CHILD of connector, metadatum BelongsTo connector, MANY2ONE)(1)
      - FROM service-instance( service-instance Uses connector, MANY2MANY)

      -(1) IF this CONNECTOR node is deleted, this FROM node is DELETED also
    required:
    - resource-instance-id
    properties:
      resource-instance-id:
        type: string
        description: Unique id of resource instance.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/definitions/metadatum"
  connectors:
    description: |
      Collection of resource instances used to connect a variety of disparate inventory widgets
    properties:
      connector:
        type: array
        items:          
          $ref: "#/definitions/connector"
  constrained-element-set:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO model-constraint (PARENT of constrained-element-set, constrained-element-set BelongsTo model-constraint, MANY2ONE)(4)
      - TO model-element (PARENT of constrained-element-set, constrained-element-set BelongsTo model-element, MANY2ONE)(4)
      - FROM element-choice-set (CHILD of constrained-element-set, element-choice-set BelongsTo constrained-element-set, MANY2ONE)(1)

      -(1) IF this CONSTRAINED-ELEMENT-SET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this CONSTRAINED-ELEMENT-SET is DELETED also
    required:
    - constrained-element-set-uuid
    - constraint-type
    - check-type
    properties:
      constrained-element-set-uuid:
        type: string
      constraint-type:
        type: string
      check-type:
        type: string
      resource-version:
        type: string
      element-choice-sets:
        type: array
        items:
          $ref: "#/definitions/element-choice-set"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  constrained-element-sets:
    properties:
      constrained-element-set:
        type: array
        items:          
          $ref: "#/definitions/constrained-element-set"
  contact:
    description: |
      Contacts store the vendor information and have a relationship to the generic-vnf.  In 1902, this will be populated by SDN-GC
      ###### Related Nodes
      - TO generic-vnf( contact supports generic-vnf, MANY2MANY)
    required:
    - contact-name
    properties:
      contact-name:
        type: string
        description: Name of the contact
      contact-telephone:
        type: string
        description: Tel no. of contact
      contact-email:
        type: string
        description: e-mail of contact
      vendor-type:
        type: string
        description: NI (Network Integrator)SI (System Integrator) 3rd Party LCM
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  contacts:
    description: |
      Collection of contacts
    properties:
      contact:
        type: array
        items:          
          $ref: "#/definitions/contact"
  cp:
    description: |
      point of attachment from services or resources to a virtual link or network.
      ###### Related Nodes
      - FROM l-interface( l-interface LinksTo cp, ONE2ONE)
      - FROM l3-interface-ipv4-address-list (CHILD of cp, l3-interface-ipv4-address-list BelongsTo cp, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of cp, l3-interface-ipv6-address-list BelongsTo cp, MANY2ONE)(1)
      - FROM l3-network( l3-network LinksTo cp, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo cp, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM vip-ipv4-address-list( vip-ipv4-address-list Uses cp, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list Uses cp, MANY2MANY)
      - FROM vlan-tag( vlan-tag Uses cp, MANY2MANY)
      - FROM vnfc (PARENT of cp, vnfc BelongsTo cp, ONE2MANY)
      cp is child of vnfc(3)

      -(1) IF this CP node is deleted, this FROM node is DELETED also
      -(3) IF this FROM node is deleted, this CP is DELETED also
    required:
    - cp-instance-id
    properties:
      cp-instance-id:
        type: string
        description: Unique ID of the connection point.
      port-id:
        type: integer
        format: int32
        description: port index to represent multiple CPs on VNFC connected to same network.
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv6-address-list"
  cps:
    description: |
      Collection of connection points.
    properties:
      cp:
        type: array
        items:          
          $ref: "#/definitions/cp"
  ctag-assignment:
    description: |
      ###### Related Nodes
      - TO l3-network (PARENT of ctag-assignment, ctag-assignment BelongsTo l3-network, MANY2ONE)(4)
      - FROM service-instance( service-instance Uses ctag-assignment, ONE2MANY)

      -(4) IF this TO node is deleted, this CTAG-ASSIGNMENT is DELETED also
    required:
    - vlan-id-inner
    properties:
      vlan-id-inner:
        type: integer
        format: int64
        description: id.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  ctag-assignments:
    properties:
      ctag-assignment:
        type: array
        items:          
          $ref: "#/definitions/ctag-assignment"
  ctag-pool:
    description: |
      A collection of C tags (vlan tags) grouped for a specific purpose.
      ###### Related Nodes
      - TO availability-zone( ctag-pool AppliesTo availability-zone, MANY2MANY)
      - TO complex (PARENT of ctag-pool, ctag-pool BelongsTo complex, MANY2ONE)(4)
      - FROM generic-vnf( generic-vnf Uses ctag-pool, MANY2MANY)
      - FROM vpls-pe( vpls-pe Uses ctag-pool, MANY2MANY)

      -(4) IF this TO node is deleted, this CTAG-POOL is DELETED also
    required:
    - target-pe
    - availability-zone-name
    - ctag-pool-purpose
    properties:
      target-pe:
        type: string
        description: The Target provider edge router
      availability-zone-name:
        type: string
        description: Name of the availability zone
      ctag-pool-purpose:
        type: string
        description: Describes what the intended purpose of this pool is.
      ctag-values:
        type: string
        description: Comma separated list of ctags
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  ctag-pools:
    properties:
      ctag-pool:
        type: array
        items:          
          $ref: "#/definitions/ctag-pool"
  customer:
    description: |
      customer identifiers to provide linkage back to BSS information.
      ###### Related Nodes
      - FROM service-subscription (CHILD of customer, service-subscription BelongsTo customer, MANY2ONE)(1)
      - FROM vpn-binding( vpn-binding Uses customer, MANY2MANY)

      -(1) IF this CUSTOMER node is deleted, this FROM node is DELETED also
    required:
    - global-customer-id
    - subscriber-name
    - subscriber-type
    properties:
      global-customer-id:
        type: string
        description: Global customer id used across ONAP to uniquely identify customer.
      subscriber-name:
        type: string
        description: Subscriber name, an alternate way to retrieve a customer.
      subscriber-type:
        type: string
        description: Subscriber type, a way to provide VID with only the INFRA customers.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      service-subscriptions:
        type: array
        items:
          $ref: "#/definitions/service-subscription"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  customers:
    description: |
      Collection of customer identifiers to provide linkage back to BSS information.
    properties:
      customer:
        type: array
        items:          
          $ref: "#/definitions/customer"
  cvlan-tag-entry:
    required:
    - cvlan-tag
    properties:
      cvlan-tag:
        type: integer
        format: int64
        description: See mis-na-virtualization-platform.yang
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  cvlan-tags:
    properties:
      cvlan-tag-entry:
        type: array
        items:          
          $ref: "#/definitions/cvlan-tag-entry"
  device:
    description: |
      Instance of a device
      ###### Related Nodes
      - TO ext-aai-network( device BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO generic-vnf( device Uses generic-vnf, ONE2MANY)
      For CCVPN Usecase
      - TO service-instance( device PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this DEVICE node is deleted, this TO node is DELETED also
    required:
    - device-id
    properties:
      device-id:
        type: string
        description: Uniquely identifies this device by id
      esn:
        type: string
        description: Store the esn of this device.
      device-name:
        type: string
        description: Store the name of this device.
      description:
        type: string
        description: Store the description of this device.
      vendor:
        type: string
        description: Store the vendor of this device.
      class:
        type: string
        description: Store the class of this device.
      type:
        type: string
        description: Store the type of this device.
      version:
        type: string
        description: Store the version of this device.
      system-ip:
        type: string
        description: Store the system-ip of this device.
      system-ipv4:
        type: string
        description: Store the system-ipv4 of this device.
      system-ipv6:
        type: string
        description: Store the system-ipv6 of this device.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  devices:
    description: |
      Collection of devices
    properties:
      device:
        type: array
        items:          
          $ref: "#/definitions/device"
  dhcp-service:
    description: |
      Instance of a dhcp-service
      ###### Related Nodes
      - FROM lan-port-config (PARENT of dhcp-service, lan-port-config Uses dhcp-service, ONE2MANY)
      For CCVPN Usecase(3)

      -(3) IF this FROM node is deleted, this DHCP-SERVICE is DELETED also
      -DHCP-SERVICE cannot be deleted if related to LAN-PORT-CONFIG
    required:
    - dhcp-service-id
    properties:
      dhcp-service-id:
        type: string
        description: Uniquely identifies this dhcp-service by id
      server-ipv4-address:
        type: string
        description: Store the server-ip4-address of this dhcp-service.
      server-ipv6-address:
        type: string
        description: Store the server-ipv6-address of this dhcp-service.
      service-enable:
        type: string
        description: Store the service-enable of this dhcp-service.
      dhcp-service-type:
        type: string
        description: Store the dhcp-service-type of this dhcp-service.
      lease-time:
        type: string
        description: Store the lease-time of this dhcp-service.
      domain-name:
        type: string
        description: Store the domain-name of this dhcp-service.
      dns:
        type: string
        description: Store the dns of this dhcp-service.
      ntp-primary:
        type: string
        description: Store the ntp-primary of this dhcp-service.
      ntp-secondary:
        type: string
        description: Store the ntp-secondary of this dhcp-service.
      nbns:
        type: string
        description: Store the nbns of this dhcp-service.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  dhcp-services:
    description: |
      Collection of dhcp-services
    properties:
      dhcp-service:
        type: array
        items:          
          $ref: "#/definitions/dhcp-service"
  dvs-switch:
    description: |
      Digital virtual switch metadata, used by SDN-C to configure VCEs.  A&AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&AI. 
      ###### Related Nodes
      - TO availability-zone( dvs-switch AppliesTo availability-zone, MANY2MANY)
      - TO cloud-region (PARENT of dvs-switch, dvs-switch BelongsTo cloud-region, MANY2ONE)
    required:
    - switch-name
    - vcenter-url
    properties:
      switch-name:
        type: string
        description: DVS switch name
      vcenter-url:
        type: string
        description: URL used to reach the vcenter
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  dvs-switches:
    description: |
      Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs.
    properties:
      dvs-switch:
        type: array
        items:          
          $ref: "#/definitions/dvs-switch"
  edge-prop-names:
    description: |
      Internal map to define the properties of an edge and interpret the map EdgeRules
    properties:
      edgeLabel:
        type: string
      direction:
        type: string
      multiplicityRule:
        type: string
      contains-other-v:
        type: string
      delete-other-v:
        type: string
      SVC-INFRA:
        type: string
      prevent-delete:
        type: string
      aai-uuid:
        type: string
  edge-tag-query-request:
    properties:
      edge-tag:
        type: string
      result-detail:
        type: string
      start-node-type:
        type: string
      start-node-filter:
        type: array
        items:          
          $ref: "#/definitions/start-node-filter"
      include-node-filter:
        type: array
        items:          
          $ref: "#/definitions/include-node-filter"
      secondary-filter:
        type: array
        items:          
          $ref: "#/definitions/secondary-filter"
  edge-tag-query-result:
    properties:
      tagged-inventory-item-list:
        type: array
        items:          
          $ref: "#/definitions/tagged-inventory-item-list"
  element-choice-set:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO constrained-element-set (PARENT of element-choice-set, element-choice-set BelongsTo constrained-element-set, MANY2ONE)(4)
      - FROM model-element (CHILD of element-choice-set, model-element BelongsTo element-choice-set, MANY2ONE)(1)

      -(1) IF this ELEMENT-CHOICE-SET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this ELEMENT-CHOICE-SET is DELETED also
    required:
    - element-choice-set-uuid
    - element-choice-set-name
    properties:
      element-choice-set-uuid:
        type: string
      element-choice-set-name:
        type: string
      cardinality:
        type: string
      resource-version:
        type: string
      model-elements:
        type: array
        items:
          $ref: "#/definitions/model-element"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  element-choice-sets:
    properties:
      element-choice-set:
        type: array
        items:          
          $ref: "#/definitions/element-choice-set"
  entitlement:
    description: |
      Metadata for entitlement group.
      ###### Related Nodes
      - TO generic-vnf (PARENT of entitlement, entitlement BelongsTo generic-vnf, MANY2ONE)(4)
      - TO vce (PARENT of entitlement, entitlement BelongsTo vce, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this ENTITLEMENT is DELETED also
    required:
    - group-uuid
    - resource-uuid
    properties:
      group-uuid:
        type: string
        description: Unique ID for the entitlement group the resource comes from, should be uuid.
      resource-uuid:
        type: string
        description: Unique ID of an entitlement resource. 
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  entitlements:
    description: |
      Entitlements, keyed by group-uuid and resource-uuid, related to license management
    properties:
      entitlement:
        type: array
        items:          
          $ref: "#/definitions/entitlement"
  esr-ems:
    description: |
      Persist EMS address information used by EMS driver.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-ems, esr-system-info BelongsTo esr-ems, MANY2ONE)(1)

      -(1) IF this ESR-EMS node is deleted, this FROM node is DELETED also
    required:
    - ems-id
    properties:
      ems-id:
        type: string
        description: Unique ID of EMS.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/definitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  esr-ems-list:
    properties:
      esr-ems:
        type: array
        items:          
          $ref: "#/definitions/esr-ems"
  esr-nfvo:
    description: |
      Persist NFVO address information used by VF-C.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-nfvo, esr-system-info BelongsTo esr-nfvo, ONE2ONE)(1)

      -(1) IF this ESR-NFVO node is deleted, this FROM node is DELETED also
    required:
    - nfvo-id
    properties:
      nfvo-id:
        type: string
        description: Unique ID of nfvo.
      api-root:
        type: string
        description: indecate the api-root.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/definitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  esr-nfvo-list:
    properties:
      esr-nfvo:
        type: array
        items:          
          $ref: "#/definitions/esr-nfvo"
  esr-system-info:
    description: |
      Persist common address information of external systems.
      ###### Related Nodes
      - TO cloud-region (PARENT of esr-system-info, esr-system-info BelongsTo cloud-region, MANY2ONE)(4)
      - TO esr-ems (PARENT of esr-system-info, esr-system-info BelongsTo esr-ems, MANY2ONE)(4)
      - TO esr-nfvo (PARENT of esr-system-info, esr-system-info BelongsTo esr-nfvo, ONE2ONE)(4)
      - TO esr-thirdparty-sdnc (PARENT of esr-system-info, esr-system-info BelongsTo esr-thirdparty-sdnc, ONE2ONE)(4)
      - TO esr-vnfm (PARENT of esr-system-info, esr-system-info BelongsTo esr-vnfm, ONE2ONE)(4)
      - FROM ext-aai-network (PARENT of esr-system-info, ext-aai-network Uses esr-system-info, ONE2MANY)
      For CCVPN Usecase(3)

      -(3) IF this FROM node is deleted, this ESR-SYSTEM-INFO is DELETED also
      -(4) IF this TO node is deleted, this ESR-SYSTEM-INFO is DELETED also
      -ESR-SYSTEM-INFO cannot be deleted if related to EXT-AAI-NETWORK
    required:
    - esr-system-info-id
    - user-name
    - password
    - system-type
    properties:
      esr-system-info-id:
        type: string
        description: Unique ID of esr system info.
      system-name:
        type: string
        description: name of external system.
      type:
        type: string
        description: type of external systems.
      vendor:
        type: string
        description: vendor of external systems.
      version:
        type: string
        description: version of external systems.
      service-url:
        type: string
        description: url used to access external systems.
      user-name:
        type: string
        description: username used to access external systems.
      password:
        type: string
        description: password used to access external systems.
      system-type:
        type: string
        description: it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm.
      protocol:
        type: string
        description: protocol of third party SDNC, for example netconf/snmp.
      ssl-cacert:
        type: string
        description: ca file content if enabled ssl on auth-url.
      ssl-insecure:
        type: boolean
        description: Whether to verify VIM's certificate.
      ip-address:
        type: string
        description: service IP of ftp server.
      port:
        type: string
        description: service port of ftp server.
      cloud-domain:
        type: string
        description: domain info for authentication.
      default-tenant:
        type: string
        description: default tenant of VIM.
      passive:
        type: boolean
        description: ftp passive mode or not.
      remote-path:
        type: string
        description: resource or performance data file path.
      system-status:
        type: string
        description: the status of external system.
      openstack-region-id:
        type: string
        description: OpenStack region ID used by MultiCloud plugin to interact with an OpenStack instance.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  esr-system-info-list:
    description: |
      Collection of persistent block-level external system auth info.
    properties:
      esr-system-info:
        type: array
        items:          
          $ref: "#/definitions/esr-system-info"
  esr-thirdparty-sdnc:
    description: |
      Persist SDNC address information used by ONAP SDNC.
      ###### Related Nodes
      - TO pnf( esr-thirdparty-sdnc AppliesTo pnf, ONE2MANY)
      - FROM esr-system-info (CHILD of esr-thirdparty-sdnc, esr-system-info BelongsTo esr-thirdparty-sdnc, ONE2ONE)(1)

      -(1) IF this ESR-THIRDPARTY-SDNC node is deleted, this FROM node is DELETED also
    required:
    - thirdparty-sdnc-id
    properties:
      thirdparty-sdnc-id:
        type: string
        description: Unique ID of SDNC.
      location:
        type: string
        description: used for DC type to indicate the location of SDNC, such as Core or Edge.
      product-name:
        type: string
        description: password used to access SDNC server.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/definitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  esr-thirdparty-sdnc-list:
    properties:
      esr-thirdparty-sdnc:
        type: array
        items:          
          $ref: "#/definitions/esr-thirdparty-sdnc"
  esr-vnfm:
    description: |
      Persist VNFM address information used by VF-C.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-vnfm, esr-system-info BelongsTo esr-vnfm, ONE2ONE)(1)
      - FROM generic-vnf( generic-vnf DependsOn esr-vnfm, MANY2ONE)

      -(1) IF this ESR-VNFM node is deleted, this FROM node is DELETED also
    required:
    - vnfm-id
    properties:
      vnfm-id:
        type: string
        description: Unique ID of VNFM.
      vim-id:
        type: string
        description: indecate the VIM to deploy VNF.
      certificate-url:
        type: string
        description: certificate url of VNFM.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/definitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  esr-vnfm-list:
    properties:
      esr-vnfm:
        type: array
        items:          
          $ref: "#/definitions/esr-vnfm"
  evc:
    description: |
      evc object is an optional child object of the Configuration object.
      ###### Related Nodes
      - TO configuration (PARENT of evc, evc BelongsTo configuration, ONE2ONE)(4)

      -(4) IF this TO node is deleted, this EVC is DELETED also
    required:
    - evc-id
    properties:
      evc-id:
        type: string
        description: Unique/key field for the evc object
      forwarding-path-topology:
        type: string
        description: Point-to-Point, Multi-Point
      cir-value:
        type: string
        description: Commited Information Rate
      cir-units:
        type: string
        description: CIR units
      connection-diversity-group-id:
        type: string
        description: Diversity Group ID
      service-hours:
        type: string
        description: formerly Performance Group
      esp-evc-circuit-id:
        type: string
        description: EVC Circuit ID of ESP EVC
      esp-evc-cir-value:
        type: string
        description: Committed Information Rate (For ESP)
      esp-evc-cir-units:
        type: string
        description: CIR units (For ESP)
      esp-itu-code:
        type: string
        description: Identifies ESP
      collector-pop-clli:
        type: string
        description: Collector POP CLLI (from the hostname of the access pnf)
      inter-connect-type-ingress:
        type: string
        description: Interconnect type on ingress side of EVC.
      tagmode-access-ingress:
        type: string
        description: tagode for collector side of EVC
      tagmode-access-egress:
        type: string
        description: tagMode for network side of EVC
      product-entry-id:
        type: string
        description: Product ID
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  evcs:
    properties:
      evc:
        type: array
        items:          
          $ref: "#/definitions/evc"
  ext-aai-network:
    description: |
      Refer to an external AAI in another ONAP.
      ###### Related Nodes
      - TO esr-system-info (PARENT of ext-aai-network, ext-aai-network Uses esr-system-info, ONE2MANY)
      For CCVPN Usecase(2)
      - FROM connectivity( connectivity BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM device( device BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM lan-port-config( lan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM logical-link( logical-link BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM network-resource( network-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM pnf( pnf BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM sdwan-vpn( sdwan-vpn BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM site-resource( site-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM vpn-binding( vpn-binding BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM wan-port-config( wan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)

      -(2) IF this EXT-AAI-NETWORK node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this EXT-AAI-NETWORK is DELETED also
      -EXT-AAI-NETWORK cannot be deleted if related to CONNECTIVITY,DEVICE,LAN-PORT-CONFIG,LOGICAL-LINK,NETWORK-RESOURCE,PNF,SDWAN-VPN,SITE-RESOURCE,VPN-BINDING,WAN-PORT-CONFIG
    required:
    - aai-id
    properties:
      aai-id:
        type: string
        description: Unique ID of the referenced AAI.
      schema-version:
        type: string
        description: Schema version of the referenced AAI.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info:
        type: object
        $ref: "#/definitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  ext-aai-networks:
    properties:
      ext-aai-network:
        type: array
        items:          
          $ref: "#/definitions/ext-aai-network"
  external-system:
    description: |
      Namespace for external system.
    properties:
      esr-ems-list:
        type: array
        items:
          $ref: "#/definitions/esr-ems"
      esr-vnfm-list:
        type: array
        items:
          $ref: "#/definitions/esr-vnfm"
      esr-nfvo-list:
        type: array
        items:
          $ref: "#/definitions/esr-nfvo"
      esr-thirdparty-sdnc-list:
        type: array
        items:
          $ref: "#/definitions/esr-thirdparty-sdnc"
  extra-properties:
    description: |
      Extra properties for inventory item for response list
    properties:
      extra-property:
        type: array
        items:          
          $ref: "#/definitions/extra-property"
  extra-property:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  flavor:
    description: |
      Openstack flavor.
      ###### Related Nodes
      - TO cloud-region (PARENT of flavor, flavor BelongsTo cloud-region, MANY2ONE)
      - TO pserver( flavor CanBeInstantiatedIn pserver, MANY2MANY)
      HPA Capacity getting the compute nodes from given flavor
      - FROM hpa-capability (CHILD of flavor, hpa-capability BelongsTo flavor, MANY2ONE)
      - FROM vserver( vserver Uses flavor, MANY2ONE)

      -FLAVOR cannot be deleted if related to HPA-CAPABILITY,VSERVER
    required:
    - flavor-id
    - flavor-name
    - flavor-selflink
    properties:
      flavor-id:
        type: string
        description: Flavor id, expected to be unique across cloud-region.
      flavor-name:
        type: string
        description: Cloud Region Flavor name
      flavor-vcpus:
        type: integer
        format: int32
        description: Number of CPUs
      flavor-ram:
        type: integer
        format: int32
        description: Amount of memory
      flavor-disk:
        type: integer
        format: int32
        description: Disk space
      flavor-ephemeral:
        type: integer
        format: int32
        description: Amount of ephemeral disk space
      flavor-swap:
        type: string
        description: amount of swap space allocation
      flavor-is-public:
        type: boolean
        description: whether flavor is available to all users or private to the tenant it was created in.
      flavor-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      flavor-disabled:
        type: boolean
        description: Boolean as to whether this flavor is no longer enabled
      hpa-capabilities:
        type: array
        items:
          $ref: "#/definitions/hpa-capability"
        description: List of flavor specific HPA Capabilities
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  flavors:
    description: |
      Collection of openstack flavors.
    properties:
      flavor:
        type: array
        items:          
          $ref: "#/definitions/flavor"
  forwarder:
    description: |
      Entity describing a sequenced segment of forwarding path
      ###### Related Nodes
      - TO configuration( forwarder Uses configuration, ONE2ONE)(2)
      - TO forwarding-path (PARENT of forwarder, forwarder BelongsTo forwarding-path, MANY2ONE)(4)
      - TO generic-vnf( forwarder AppliesTo generic-vnf, MANY2MANY)
      Points to the generic-vnf(s) involved in this forwarding step.
      - TO l-interface( forwarder ForwardsTo l-interface, MANY2MANY)
      - TO lag-interface( forwarder ForwardsTo lag-interface, MANY2MANY)
      - TO p-interface( forwarder ForwardsTo p-interface, MANY2MANY)

      -(2) IF this FORWARDER node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDER is DELETED also
    required:
    - sequence
    properties:
      sequence:
        type: integer
        format: int32
        description: Unique ID of this segmentation
      forwarder-role:
        type: string
        description: ingress, intermediate, egress
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  forwarder-evc:
    description: |
      forwarder object is an optional child object of the Configuration object.
      ###### Related Nodes
      - TO configuration (PARENT of forwarder-evc, forwarder-evc BelongsTo configuration, ONE2ONE)(4)
      - FROM vlan-mapping (CHILD of forwarder-evc, vlan-mapping BelongsTo forwarder-evc, MANY2ONE)(1)

      -(1) IF this FORWARDER-EVC node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDER-EVC is DELETED also
    required:
    - forwarder-evc-id
    properties:
      forwarder-evc-id:
        type: string
        description: Key for forwarder-evc object
      circuit-id:
        type: string
        description: Circuit ID from customer/ESP/ingress end of EVC, or reference to beater circuit on gateway/network/egress end of EVC
      ivlan:
        type: string
        description: Internal VLAN.
      svlan:
        type: string
        description: SVLAN value for ingress of egress forwarder.
      cvlan:
        type: string
        description: CVLAN value for ingress of egress forwarder.
      vlan-mappings:
        type: array
        items:
          $ref: "#/definitions/vlan-mapping"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  forwarder-evcs:
    properties:
      forwarder-evc:
        type: array
        items:          
          $ref: "#/definitions/forwarder-evc"
  forwarders:
    properties:
      forwarder:
        type: array
        items:          
          $ref: "#/definitions/forwarder"
  forwarding-path:
    description: |
      Entity that describes the sequenced forwarding path between interfaces of services or resources
      ###### Related Nodes
      - TO configuration( forwarding-path Uses configuration, ONE2ONE)(2)
      - TO service-instance( forwarding-path AppliesTo service-instance, MANY2ONE)(4)
      - FROM forwarder (CHILD of forwarding-path, forwarder BelongsTo forwarding-path, MANY2ONE)(1)

      -(1) IF this FORWARDING-PATH node is deleted, this FROM node is DELETED also
      -(2) IF this FORWARDING-PATH node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDING-PATH is DELETED also
    required:
    - forwarding-path-id
    - forwarding-path-name
    properties:
      forwarding-path-id:
        type: string
        description: Unique ID of this FP
      forwarding-path-name:
        type: string
        description: Name of the FP
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
      selflink:
        type: string
        description: the self link for this FP
      forwarders:
        type: array
        items:
          $ref: "#/definitions/forwarder"
  forwarding-paths:
    properties:
      forwarding-path:
        type: array
        items:          
          $ref: "#/definitions/forwarding-path"
  generic-vnf:
    description: |
      General purpose VNF
      ###### Related Nodes
      - TO availability-zone( generic-vnf Uses availability-zone, MANY2MANY)
      - TO cloud-region( generic-vnf LocatedIn cloud-region, MANY2ONE)
      - TO complex( generic-vnf LocatedIn complex, MANY2MANY)
      - TO configuration( generic-vnf Uses configuration, ONE2MANY)(2)
      - TO ctag-pool( generic-vnf Uses ctag-pool, MANY2MANY)
      - TO esr-vnfm( generic-vnf DependsOn esr-vnfm, MANY2ONE)
      - TO instance-group( generic-vnf MemberOf instance-group, MANY2MANY)
      - TO instance-group( generic-vnf Uses instance-group, ONE2MANY)
      - TO ipsec-configuration( generic-vnf Uses ipsec-configuration, MANY2ONE)
      - TO l3-network( generic-vnf Uses l3-network, MANY2MANY)
      - TO nos-server( generic-vnf HostedOn nos-server, MANY2ONE)
      - TO pnf( generic-vnf HostedOn pnf, MANY2MANY)
      - TO pserver( generic-vnf HostedOn pserver, MANY2MANY)
      - TO tenant( generic-vnf BelongsTo tenant, MANY2ONE)
      - TO virtual-data-center( generic-vnf LocatedIn virtual-data-center, MANY2MANY)
      - TO vnf-image( generic-vnf Uses vnf-image, MANY2ONE)
      - TO volume-group( generic-vnf DependsOn volume-group, ONE2MANY)
      - TO vserver( generic-vnf HostedOn vserver, ONE2MANY)
      - FROM allotted-resource( allotted-resource PartOf generic-vnf, MANY2MANY)
      - FROM contact( contact supports generic-vnf, MANY2MANY)
      - FROM device( device Uses generic-vnf, ONE2MANY)
      For CCVPN Usecase
      - FROM entitlement (CHILD of generic-vnf, entitlement BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM forwarder( forwarder AppliesTo generic-vnf, MANY2MANY)
      Points to the generic-vnf(s) involved in this forwarding step.
      - FROM instance-group( instance-group BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM l-interface (CHILD of generic-vnf, l-interface BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM lag-interface (CHILD of generic-vnf, lag-interface BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM license (CHILD of generic-vnf, license BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM line-of-business( line-of-business Uses generic-vnf, MANY2MANY)
      - FROM logical-link( logical-link BridgedTo generic-vnf, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo generic-vnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM network-profile( network-profile AppliesTo generic-vnf, MANY2MANY)
      - FROM platform( platform Uses generic-vnf, MANY2MANY)
      - FROM service-instance( service-instance ComposedOf generic-vnf, ONE2MANY)
      - FROM site-pair-set( site-pair-set AppliesTo generic-vnf, MANY2MANY)
      - FROM vf-module (CHILD of generic-vnf, vf-module BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM vnfc( vnfc BelongsTo generic-vnf, MANY2ONE)(1)

      -(1) IF this GENERIC-VNF node is deleted, this FROM node is DELETED also
      -(2) IF this GENERIC-VNF node is deleted, this TO node is DELETED also
    required:
    - vnf-id
    - vnf-type
    - in-maint
    - is-closed-loop-disabled
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
      vnf-instance-id:
        type: string
        description: vnf instance id.
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures.
      service-id:
        type: string
        description: Unique identifier of service, does not necessarily map to ASDC service models.  SOON TO BE DEPRECATED
      regional-resource-zone:
        type: string
        description: Regional way of organizing pservers, source of truth should define values
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.  Valid values are in-service-path and out-of-service-path.
      license-key:
        type: string
        description: OBSOLETE -  do not use
      equipment-role:
        type: string
        description: Client should send valid enumerated value
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, used by MSO.
      vnf-package-name:
        type: string
      vnf-discriptor-name:
        type: string
        description: vnf discriptor name
      job-id:
        type: string
        description: job id corresponding to vnf
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      management-option:
        type: string
        description: identifier of managed customer
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf.
      ipv4-loopback0-address:
        type: string
        description: v4 Loopback0 address
      nm-lan-v6-address:
        type: string
        description: v6 Loopback address
      management-v6-address:
        type: string
        description: v6 management address
      vcpu:
        type: integer
        format: int64
        description: number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
      vcpu-units:
        type: string
        description: units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE
      vmemory:
        type: integer
        format: int64
        description: number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
      vmemory-units:
        type: string
        description: units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE
      vdisk:
        type: integer
        format: int64
        description: number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE
      vdisk-units:
        type: string
        description: units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE
      nshd:
        type: integer
        format: int64
        description: number of associated SHD in vnf.
      nvm:
        type: integer
        format: int64
        description: number of vms in vnf.
      nnet:
        type: integer
        format: int64
        description: number of network in vnf.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      is-closed-loop-disabled:
        type: boolean
        description: used to indicate whether closed loop function is enabled on this node
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      summary-status:
        type: string
        description: details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD.
      encrypted-access-flag:
        type: boolean
        description: indicates whether generic-vnf access uses SSH
      entitlement-assignment-group-uuid:
        type: string
        description: UUID of the Entitlement group used for licensing VNFs, OBSOLETE -  See child relationships.
      entitlement-resource-uuid:
        type: string
        description: UUID of the specific entitlement resource.  OBSOLETE -  See child relationships.
      license-assignment-group-uuid:
        type: string
        description: UUID of the license assignment group.  OBSOLETE -  See child relationships.
      license-key-uuid:
        type: string
        description: UUID of the actual license resource.  OBSOLETE -  See child relationships.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      as-number:
        type: string
        description: as-number of the VNF
      regional-resource-subzone:
        type: string
        description: represents sub zone of the rr plane
      nf-type:
        type: string
        description: Generic description of the type of NF
      nf-function:
        type: string
        description: English description of Network function that the specific VNF deployment is providing
      nf-role:
        type: string
        description: role in the network that this model will be providing
      nf-naming-code:
        type: string
        description: string assigned to this model used for naming purposes
      selflink:
        type: string
        description: Path to the controller object.
      ipv4-oam-gateway-address:
        type: string
        description: Gateway address
      ipv4-oam-gateway-address-prefix-length:
        type: integer
        format: int32
        description: Prefix length for oam-address
      vlan-id-outer:
        type: integer
        format: int64
        description: Temporary location for S-TAG to get to VCE
      nm-profile-name:
        type: string
        description: Network Management profile of this VNF
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/definitions/l-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/definitions/lag-interface"
      vf-modules:
        type: array
        items:
          $ref: "#/definitions/vf-module"
      licenses:
        type: array
        items:
          $ref: "#/definitions/license"
      entitlements:
        type: array
        items:
          $ref: "#/definitions/entitlement"
  generic-vnfs:
    description: |
      Collection of VNFs
    properties:
      generic-vnf:
        type: array
        items:          
          $ref: "#/definitions/generic-vnf"
  group-assignment:
    description: |
      Openstack group-assignment used to store exclusivity groups (EG).
      ###### Related Nodes
      - TO cloud-region (PARENT of group-assignment, group-assignment BelongsTo cloud-region, MANY2ONE)
      - FROM pserver( pserver MemberOf group-assignment, MANY2ONE)
      - FROM tenant( tenant MemberOf group-assignment, MANY2MANY)
    required:
    - group-id
    - group-type
    - group-name
    properties:
      group-id:
        type: string
        description: Group id, expected to be unique across cloud-region.
      group-type:
        type: string
        description: Group type - the type of group this instance refers to
      group-name:
        type: string
        description: Group name - name assigned to the group
      group-description:
        type: string
        description: Group description - description of the group
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  group-assignments:
    description: |
      Collection of openstack group assignments
    properties:
      group-assignment:
        type: array
        items:          
          $ref: "#/definitions/group-assignment"
  host-route:
    description: |
      ###### Related Nodes
      - TO subnet (PARENT of host-route, host-route BelongsTo subnet, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this HOST-ROUTE is DELETED also
    required:
    - host-route-id
    - route-prefix
    - next-hop
    properties:
      host-route-id:
        type: string
        description: host-route id
      route-prefix:
        type: string
        description: subnet prefix
      next-hop:
        type: string
        description: Could be ip-address, hostname, or service-instance
      next-hop-type:
        type: string
        description: Should be ip-address, hostname, or service-instance to match next-hop
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  host-routes:
    properties:
      host-route:
        type: array
        items:          
          $ref: "#/definitions/host-route"
  hpa-capabilities:
    description: |
      Collection of HPA Capabilities
    properties:
      hpa-capability:
        type: array
        items:          
          $ref: "#/definitions/hpa-capability"
  hpa-capability:
    description: |
      Represents a HPA capability
      ###### Related Nodes
      - TO cloud-region (PARENT of hpa-capability, hpa-capability BelongsTo cloud-region, MANY2ONE)
      - TO flavor (PARENT of hpa-capability, hpa-capability BelongsTo flavor, MANY2ONE)
      - FROM hpa-feature-attributes (CHILD of hpa-capability, hpa-feature-attributes BelongsTo hpa-capability, MANY2ONE)(1)

      -(1) IF this HPA-CAPABILITY node is deleted, this FROM node is DELETED also
    required:
    - hpa-capability-id
    - hpa-feature
    properties:
      hpa-capability-id:
        type: string
        description: UUID to uniquely identify a HPA capability
      hpa-feature:
        type: string
        description: Name of the HPACapability
      hpa-version:
        type: string
        description: HPA schema version
      architecture:
        type: string
        description: Hardware architecture
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      hpa-feature-attributes:
        type: array
        items:          
          $ref: "#/definitions/hpa-feature-attributes"
  hpa-capacity:
    description: |
      HPA Capacity information for compute node
      ###### Related Nodes
      - TO pserver (PARENT of hpa-capacity, hpa-capacity BelongsTo pserver, MANY2ONE)
      HPA Capacity KV for given compute node(4)

      -(4) IF this TO node is deleted, this HPA-CAPACITY is DELETED also
    required:
    - hpa-capacity-key
    properties:
      hpa-capacity-key:
        type: string
        description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
      hpa-capacity-value:
        type: string
        description: JSON string specifying the capacity (total,free), unit and metadata of the specific HPA attribute
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  hpa-feature-attributes:
    description: |
      HPA Capability Feature attributes
      ###### Related Nodes
      - TO hpa-capability (PARENT of hpa-feature-attributes, hpa-feature-attributes BelongsTo hpa-capability, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this HPA-FEATURE-ATTRIBUTES is DELETED also
    required:
    - hpa-attribute-key
    properties:
      hpa-attribute-key:
        type: string
        description: name of the specific HPA attribute
      hpa-attribute-value:
        type: string
        description: JSON string specifying the value, unit and type of the specific HPA attribute
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  image:
    description: |
      Openstack image.
      ###### Related Nodes
      - TO cloud-region (PARENT of image, image BelongsTo cloud-region, MANY2ONE)
      - FROM metadatum (CHILD of image, metadatum BelongsTo image, MANY2ONE)(1)
      - FROM vserver( vserver Uses image, MANY2ONE)

      -(1) IF this IMAGE node is deleted, this FROM node is DELETED also
      -IMAGE cannot be deleted if related to VSERVER
    required:
    - image-id
    - image-name
    - image-os-distro
    - image-os-version
    - image-selflink
    properties:
      image-id:
        type: string
        description: Image id, expected to be unique across cloud region
      image-name:
        type: string
        description: Image name
      image-architecture:
        type: string
        description: Operating system architecture.
      image-os-distro:
        type: string
        description: The common name of the operating system distribution in lowercase
      image-os-version:
        type: string
        description: The operating system version as specified by the distributor.
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      image-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/definitions/metadatum"
  images:
    description: |
      Collectio of Openstack images.
    properties:
      image:
        type: array
        items:          
          $ref: "#/definitions/image"
  include-node-filter:
    properties:
      include-node-type:
        type: string
  instance-filter:
    description: |
      InstanceFilter for performing a named-query or model query
  instance-filters:
    description: |
      InstanceFilters for performing a named-query or model query
    properties:
      instance-filter:
        type: array
        items:          
          $ref: "#/definitions/instance-filter"
  instance-group:
    description: |
      General mechanism for grouping instances
      ###### Related Nodes
      - TO collection( instance-group BelongsTo collection, ONE2ONE)
      - TO generic-vnf( instance-group BelongsTo generic-vnf, MANY2ONE)(4)
      - TO model( instance-group Targets model, MANY2MANY)
      - FROM allotted-resource( allotted-resource MemberOf instance-group, MANY2MANY)
      - FROM cloud-region( cloud-region Uses instance-group, ONE2MANY)
      - FROM generic-vnf( generic-vnf MemberOf instance-group, MANY2MANY)
      - FROM generic-vnf( generic-vnf Uses instance-group, ONE2MANY)
      - FROM l-interface( l-interface MemberOf instance-group, MANY2MANY)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - FROM l3-network( l3-network MemberOf instance-group, MANY2MANY)
      - FROM pnf( pnf MemberOf instance-group, MANY2MANY)
      - FROM service-instance( service-instance Uses instance-group, ONE2MANY)
      MSO creates this edge on VNF Group Service creation
      - FROM service-instance( service-instance MemberOf instance-group, MANY2MANY)
      - FROM vip-ipv4-address-list( vip-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - FROM vnfc( vnfc MemberOf instance-group, MANY2MANY)

      -(4) IF this TO node is deleted, this INSTANCE-GROUP is DELETED also
    required:
    - id
    - instance-group-type
    properties:
      id:
        type: string
        description: Instance Group ID, UUID assigned to this instance.
      instance-group-role:
        type: string
        description: role of the instance group.
      model-invariant-id:
        type: string
        description: ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: ASDC model version uid for this resource model.
        also requires: model-invariant-id
      description:
        type: string
        description: Descriptive text to help identify the usage of this instance-group
      instance-group-type:
        type: string
        description: Only valid value today is lower case ha for high availability
      resource-version:
        type: string
        description: Concurrency value
      instance-group-name:
        type: string
        description: Instance-Group Name.
      instance-group-function:
        type: string
        description: Instance-Group Function
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  instance-groups:
    description: |
      Collection of openstack route table references
    properties:
      instance-group:
        type: array
        items:          
          $ref: "#/definitions/instance-group"
  inventory:
    properties:
      cloud-infrastructure:
        type: object
        $ref: "#/definitions/cloud-infrastructure"
      external-system:
        type: object
        $ref: "#/definitions/external-system"
      business:
        type: object
        $ref: "#/definitions/business"
      service-design-and-creation:
        type: object
        $ref: "#/definitions/service-design-and-creation"
      network:
        type: object
        $ref: "#/definitions/network"
      common:
        type: object
        $ref: "#/definitions/common"
  inventory-item:
    properties:
      inventory-item-type:
        type: string
      inventory-item-link:
        type: string
      inventory-item-data:
        type: array
        items:          
          $ref: "#/definitions/inventory-item-data"
      tagged-inventory-item-list:
        type: array
        items:          
          $ref: "#/definitions/tagged-inventory-item-list"
  inventory-item-data:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  inventory-response-item:
    description: |
      Inventory item for response list
    properties:
      model-name:
        type: string
      extra-properties:
        type: object
        $ref: "#/definitions/extra-properties"
      inventory-response-items:
        type: object
        $ref: "#/definitions/inventory-response-items"
  inventory-response-items:
    description: |
      Container for inventory items in response list
    properties:
      inventory-response-item:
        type: array
        items:          
          $ref: "#/definitions/inventory-response-item"
  ipsec-configuration:
    description: |
      IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C
      ###### Related Nodes
      - FROM generic-vnf( generic-vnf Uses ipsec-configuration, MANY2ONE)
      - FROM vig-server (CHILD of ipsec-configuration, vig-server BelongsTo ipsec-configuration, MANY2ONE)(1)

      -(1) IF this IPSEC-CONFIGURATION node is deleted, this FROM node is DELETED also
    required:
    - ipsec-configuration-id
    properties:
      ipsec-configuration-id:
        type: string
        description: UUID of this configuration
      requested-vig-address-type:
        type: string
        description: Indicate the type of VIG server like AVPN, INTERNET, BOTH
      requested-encryption-strength:
        type: string
        description: Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc
      requested-dmz-type:
        type: string
        description: Shared DMZ or a DMZ specific to a customer
      shared-dmz-network-address:
        type: string
        description: Network address of shared DMZ
      requested-customer-name:
        type: string
        description: If the DMZ is a custom DMZ, this field will indicate the customer information
      ike-version:
        type: string
        description: can be 1 or 2
      ikev1-authentication:
        type: string
        description: Contains values like md5, sha1, sha256, sha384
      ikev1-encryption:
        type: string
        description: Encyption values like 3des-cbc, des-cbc, aes-128-cbc,Â aes-192-cbc, aes-265-cbc
      ikev1-dh-group:
        type: string
        description: Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14
      ikev1-am-group-id:
        type: string
        description: Group name defined in VIG for clients using aggressive mode
      ikev1-am-password:
        type: string
        description: pre-shared key for the above group name 
      ikev1-sa-lifetime:
        type: string
        description: Lifetime for IKEv1 SA
      ipsec-authentication:
        type: string
        description: md5, sha1, sha256, sha384
      ipsec-encryption:
        type: string
        description: 3des-cbc, des-cbc, aes-128-cbc,Â aes-192-cbc, aes-265-cbc
      ipsec-sa-lifetime:
        type: string
        description: Life time for IPSec SA
      ipsec-pfs:
        type: string
        description: enable PFS or not
      xauth-userid:
        type: string
        description: user ID for xAuth, sm-user,ucpeHostName,nmteHostName
      xauth-user-password:
        type: string
        description: Encrypted using the Juniper $9$ algorithm
      dpd-interval:
        type: string
        description: The time between DPD probe
      dpd-frequency:
        type: string
        description: Maximum number of DPD before claiming the tunnel is down
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      vig-servers:
        type: array
        items:
          $ref: "#/definitions/vig-server"
  ipsec-configurations:
    properties:
      ipsec-configuration:
        type: array
        items:          
          $ref: "#/definitions/ipsec-configuration"
  key-data:
    properties:
      key-name:
        type: string
      key-value:
        type: string
  l-interface:
    description: |
      Logical interfaces, e.g., a vnic.
      ###### Related Nodes
      - TO cp( l-interface LinksTo cp, ONE2ONE)
      - TO generic-vnf (PARENT of l-interface, l-interface BelongsTo generic-vnf, MANY2ONE)(4)
      - TO instance-group( l-interface MemberOf instance-group, MANY2MANY)
      - TO l-interface( l-interface BelongsTo l-interface, MANY2ONE)(4)
      - TO logical-link( l-interface LinksTo logical-link, MANY2MANY)(2)
      - TO newvce (PARENT of l-interface, l-interface BelongsTo newvce, MANY2ONE)(4)
      - TO p-interface (PARENT of l-interface, l-interface BindsTo p-interface, MANY2ONE)(4)
      - TO vserver (PARENT of l-interface, l-interface BindsTo vserver, MANY2ONE)(4)
      - TO lag-interface (PARENT of l-interface, l-interface BelongsTo lag-interface, MANY2ONE)(4)
      - FROM allotted-resource( allotted-resource Uses l-interface, ONE2MANY)
      - FROM configuration( configuration AppliesTo l-interface, ONE2MANY)
      - FROM forwarder( forwarder ForwardsTo l-interface, MANY2MANY)
      - FROM l-interface (PARENT of l-interface, l-interface BelongsTo l-interface, MANY2ONE)(4)
      - FROM logical-link( logical-link Source l-interface, MANY2MANY)(1)
      - FROM logical-link( logical-link Destination l-interface, MANY2MANY)(1)
      - FROM sriov-vf (CHILD of l-interface, sriov-vf BelongsTo l-interface, ONE2ONE)(1)
      - FROM vlan (CHILD of l-interface, vlan LinksTo l-interface, MANY2ONE)(1)
      - FROM vrf( vrf Uses l-interface, ONE2MANY)
      - FROM l3-interface-ipv4-address-list (CHILD of l-interface, l3-interface-ipv4-address-list BelongsTo l-interface, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of l-interface, l3-interface-ipv6-address-list BelongsTo l-interface, MANY2ONE)(1)
      - FROM lag-interface( lag-interface Uses l-interface, ONE2MANY)

      -(1) IF this L-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this L-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this L-INTERFACE is DELETED also
    required:
    - interface-name
    - is-port-mirrored
    - in-maint
    - is-ip-unnumbered
    properties:
      interface-name:
        type: string
        description: Name given to the interface
      interface-role:
        type: string
        description: E.g., CUSTOMER, UPLINK, etc.
      v6-wan-link-ip:
        type: string
        description: Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      interface-id:
        type: string
        description: ID of interface
      macaddr:
        type: string
        description: MAC address for the interface
      network-name:
        type: string
        description: Name of the network
      management-option:
        type: string
        description: Whether A&AI should be managing this interface of not. Could have value like CUSTOMER
      interface-description:
        type: string
        description: Human friendly text regarding this interface.
      is-port-mirrored:
        type: boolean
        description: boolean indicatating whether or not port is a mirrored.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      prov-status:
        type: string
        description: Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV].
      is-ip-unnumbered:
        type: boolean
        description: Flag indicating the interface uses the IP Unnumbered configuration.
      allowed-address-pairs:
        type: string
        description: Freeform field for storing an ip address, list of ip addresses or a subnet block.
      priority:
        type: integer
        format: int32
        description: Priority used for fail-over. Valid values 1-1024, with 1 being the highest priority.
      vlans:
        type: array
        items:
          $ref: "#/definitions/vlan"
      sriov-vfs:
        type: array
        items:
          $ref: "#/definitions/sriov-vf"
      l-interfaces:
        type: array
        items:
          $ref: "#/definitions/l-interface"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv6-address-list"
      admin-status:
        type: string
        description: Administrative status of the interface. Valid values are 'up', 'down', or 'testing'.
  l-interfaces:
    description: |
      Collection of logical interfaces.
    properties:
      l-interface:
        type: array
        items:          
          $ref: "#/definitions/l-interface"
  l3-interface-ipv4-address-list:
    description: |
      IPv4 Address Range
      ###### Related Nodes
      - TO cp (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo cp, MANY2ONE)(4)
      - TO instance-group( l3-interface-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - TO l-interface (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo l-interface, MANY2ONE)(4)
      - TO l3-network( l3-interface-ipv4-address-list MemberOf l3-network, MANY2MANY)
      - TO subnet( l3-interface-ipv4-address-list MemberOf subnet, MANY2MANY)
      - TO vlan (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo vlan, MANY2ONE)(4)
      - TO vnfc (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo vnfc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this L3-INTERFACE-IPV4-ADDRESS-LIST is DELETED also
    required:
    - l3-interface-ipv4-address
    properties:
      l3-interface-ipv4-address:
        type: string
        description: IP address
      l3-interface-ipv4-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 32 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  l3-interface-ipv6-address-list:
    description: |
      IPv6 Address Range
      ###### Related Nodes
      - TO cp (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo cp, MANY2ONE)(4)
      - TO instance-group( l3-interface-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - TO l-interface (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo l-interface, MANY2ONE)(4)
      - TO l3-network( l3-interface-ipv6-address-list MemberOf l3-network, MANY2MANY)
      - TO subnet( l3-interface-ipv6-address-list MemberOf subnet, MANY2MANY)
      - TO vlan (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo vlan, MANY2ONE)(4)
      - TO vnfc (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo vnfc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this L3-INTERFACE-IPV6-ADDRESS-LIST is DELETED also
    required:
    - l3-interface-ipv6-address
    properties:
      l3-interface-ipv6-address:
        type: string
        description: IP address
      l3-interface-ipv6-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 128 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  l3-network:
    description: |
      Generic network definition
      ###### Related Nodes
      - TO cp( l3-network LinksTo cp, MANY2MANY)
      - TO instance-group( l3-network MemberOf instance-group, MANY2MANY)
      - TO l3-network( l3-network Uses l3-network, MANY2MANY)
      - TO network-policy( l3-network Uses network-policy, MANY2MANY)
      - TO route-table-reference( l3-network Uses route-table-reference, MANY2MANY)
      - TO vpn-binding( l3-network Uses vpn-binding, MANY2MANY)
      - FROM aggregate-route (CHILD of l3-network, aggregate-route BelongsTo l3-network, MANY2ONE)(1)
      - FROM allotted-resource( allotted-resource PartOf l3-network, MANY2MANY)
      - FROM cloud-region( cloud-region Uses l3-network, MANY2MANY)
      - FROM complex( complex Uses l3-network, MANY2MANY)
      - FROM configuration( configuration PartOf l3-network, MANY2MANY)
      - FROM ctag-assignment (CHILD of l3-network, ctag-assignment BelongsTo l3-network, MANY2ONE)(1)
      - FROM generic-vnf( generic-vnf Uses l3-network, MANY2MANY)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf l3-network, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf l3-network, MANY2MANY)
      - FROM l3-network( l3-network Uses l3-network, MANY2MANY)
      - FROM line-of-business( line-of-business Uses l3-network, MANY2MANY)
      - FROM platform( platform Uses l3-network, MANY2MANY)
      - FROM segmentation-assignment (CHILD of l3-network, segmentation-assignment BelongsTo l3-network, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf l3-network, ONE2MANY)
      - FROM subnet (CHILD of l3-network, subnet BelongsTo l3-network, MANY2ONE)(1)
      - FROM tenant( tenant Uses l3-network, MANY2MANY)
      - FROM vf-module( vf-module DependsOn l3-network, MANY2MANY)
      - FROM vlan-tag( vlan-tag BelongsTo l3-network, MANY2MANY)
      - FROM vrf( vrf Uses l3-network, ONE2MANY)
      A vrf uses many l3-networks

      -(1) IF this L3-NETWORK node is deleted, this FROM node is DELETED also
    required:
    - network-id
    - is-bound-to-vpn
    - is-provider-network
    - is-shared-network
    - is-external-network
    properties:
      network-id:
        type: string
        description: Network ID, should be uuid. Unique across A&AI.
      network-name:
        type: string
        description: Name of the network, governed by some naming convention..
      network-type:
        type: string
        description: Type of the network - who defines these values?
      network-role:
        type: string
        description: Role the network plans - who defines these values?
      network-technology:
        type: string
        description: Network technology - who defines these values?
      neutron-network-id:
        type: string
        description: Neutron network id of this Interface
      is-bound-to-vpn:
        type: boolean
        description: Set to true if bound to VPN
      service-id:
        type: string
        description: Unique identifier of service from ASDC.  Does not strictly map to ASDC services.  SOON TO BE DEPRECATED
      network-role-instance:
        type: integer
        format: int64
        description: network role instance
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      contrail-network-fqdn:
        type: string
        description: Contrail FQDN for the network
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      physical-network-name:
        type: string
        description: Name associated with the physical network.
      is-provider-network:
        type: boolean
        description: boolean indicatating whether or not network is a provider network.
      is-shared-network:
        type: boolean
        description: boolean indicatating whether or not network is a shared network.
      is-external-network:
        type: boolean
        description: boolean indicatating whether or not network is an external network.
      selflink:
        type: string
        description: Path to the controller object.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.
      is-trunked:
        type: boolean
        description: Trunked network indication.
      subnets:
        type: array
        items:
          $ref: "#/definitions/subnet"
      ctag-assignments:
        type: array
        items:
          $ref: "#/definitions/ctag-assignment"
      segmentation-assignments:
        type: array
        items:
          $ref: "#/definitions/segmentation-assignment"
      aggregate-routes:
        type: array
        items:
          $ref: "#/definitions/aggregate-route"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
        description: Relates to tenant (or is it a child of tenant), complex, service, vpn-binding
  l3-networks:
    properties:
      l3-network:
        type: array
        items:          
          $ref: "#/definitions/l3-network"
  lag-interface:
    description: |
      Link aggregate interface
      ###### Related Nodes
      - TO generic-vnf (PARENT of lag-interface, lag-interface BelongsTo generic-vnf, MANY2ONE)(4)
      - TO l-interface( lag-interface Uses l-interface, ONE2MANY)
      - TO lag-link( lag-interface LinksTo lag-link, MANY2MANY)(2)
      - TO logical-link( lag-interface Uses logical-link, MANY2MANY)(2)
      - TO p-interface( lag-interface Uses p-interface, MANY2MANY)
      - TO pnf (PARENT of lag-interface, lag-interface BindsTo pnf, MANY2ONE)(4)
      - TO pserver (PARENT of lag-interface, lag-interface BindsTo pserver, MANY2ONE)(4)
      - TO vpls-pe (PARENT of lag-interface, lag-interface BindsTo vpls-pe, MANY2ONE)(4)
      - FROM forwarder( forwarder ForwardsTo lag-interface, MANY2MANY)
      - FROM l-interface (CHILD of lag-interface, l-interface BelongsTo lag-interface, MANY2ONE)(1)

      -(1) IF this LAG-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this LAG-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this LAG-INTERFACE is DELETED also
    required:
    - interface-name
    - in-maint
    properties:
      interface-name:
        type: string
        description: Name that identifies the link aggregate interface
      interface-description:
        type: string
        description: Human friendly text regarding this interface.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      interface-id:
        type: string
        description: ID of interface
      interface-role:
        type: string
        description: Role assigned to this Interface, should use values as defined in ONAP Yang models.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/definitions/l-interface"
  lag-interfaces:
    description: |
      Collection of link aggregate interfaces.
    properties:
      lag-interface:
        type: array
        items:          
          $ref: "#/definitions/lag-interface"
  lag-link:
    description: |
      LAG links can connect lag-interfaces
      ###### Related Nodes
      - FROM lag-interface( lag-interface LinksTo lag-link, MANY2MANY)(3)
      - FROM logical-link( logical-link Uses lag-link, MANY2MANY)

      -(3) IF this FROM node is deleted, this LAG-LINK is DELETED also
    required:
    - link-name
    properties:
      link-name:
        type: string
        description: Alphabetical concatenation of lag-interface names
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  lag-links:
    description: |
      Collection of link aggregation connections
    properties:
      lag-link:
        type: array
        items:          
          $ref: "#/definitions/lag-link"
  lan-port-config:
    description: |
      Instance of a lan-port-config
      ###### Related Nodes
      - TO dhcp-service (PARENT of lan-port-config, lan-port-config Uses dhcp-service, ONE2MANY)
      For CCVPN Usecase(2)
      - TO ext-aai-network( lan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( lan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this LAN-PORT-CONFIG node is deleted, this TO node is DELETED also
    required:
    - lan-port-config-id
    properties:
      lan-port-config-id:
        type: string
        description: Uniquely identifies this lan-port-config by id
      lan-port-config-name:
        type: string
        description: Store the name of this lan-port-config.
      description:
        type: string
        description: Store the description of this lan-port-config.
      device-id:
        type: string
        description: Store the device-id of this lan-port-config.
      port-id:
        type: string
        description: Store the port-id of this lan-port-config.
      ipv4-address:
        type: string
        description: Store the ipv4-address of this lan-port-config.
      ipv6-address:
        type: string
        description: Store the ipv6-address of this lan-port-config.
      vlan-tag:
        type: string
        description: Store the vlan-tag of this lan-port-config.
      input-bandwidth:
        type: string
        description: Store the input-bandwidth of this lan-port-config.
      output-bandwidth:
        type: string
        description: Store the output-bandwidth of this lan-port-config.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      dhcp-services:
        type: array
        items:
          $ref: "#/definitions/dhcp-service"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  lan-port-configs:
    description: |
      Collection of lan-port-configs
    properties:
      lan-port-config:
        type: array
        items:          
          $ref: "#/definitions/lan-port-config"
  license:
    description: |
      Metadata for license group.
      ###### Related Nodes
      - TO generic-vnf (PARENT of license, license BelongsTo generic-vnf, MANY2ONE)(4)
      - TO vce (PARENT of license, license BelongsTo vce, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this LICENSE is DELETED also
    required:
    - group-uuid
    - resource-uuid
    properties:
      group-uuid:
        type: string
        description: Unique ID for the license group the resource belongs to, should be uuid.
      resource-uuid:
        type: string
        description: Unique ID of a license resource. 
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  licenses:
    description: |
      Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management
    properties:
      license:
        type: array
        items:          
          $ref: "#/definitions/license"
  line-of-business:
    description: |
      describes a line-of-business
      ###### Related Nodes
      - TO generic-vnf( line-of-business Uses generic-vnf, MANY2MANY)
      - TO l3-network( line-of-business Uses l3-network, MANY2MANY)
    required:
    - line-of-business-name
    properties:
      line-of-business-name:
        type: string
        description: Name of the line-of-business (product)
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  lines-of-business:
    description: |
      Collection of lines-of-business
    properties:
      line-of-business:
        type: array
        items:          
          $ref: "#/definitions/line-of-business"
  logical-link:
    description: |
      Logical links generally connect l-interfaces but are used to express logical connectivity between two points
      ###### Related Nodes
      - TO cloud-region( logical-link LocatedIn cloud-region, MANY2MANY)
      - TO ext-aai-network( logical-link BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO generic-vnf( logical-link BridgedTo generic-vnf, MANY2MANY)
      - TO l-interface( logical-link Source l-interface, MANY2MANY)(4)
      - TO l-interface( logical-link Destination l-interface, MANY2MANY)(4)
      - TO lag-link( logical-link Uses lag-link, MANY2MANY)
      - TO logical-link( logical-link Uses logical-link, MANY2MANY)
      - TO pnf( logical-link BridgedTo pnf, MANY2MANY)
      - TO pserver( logical-link BridgedTo pserver, MANY2MANY)
      - TO virtual-data-center( logical-link LocatedIn virtual-data-center, MANY2MANY)
      - TO vpn-binding( logical-link Uses vpn-binding, MANY2MANY)
      - FROM configuration( configuration Uses logical-link, ONE2MANY)(3)
      - FROM l-interface( l-interface LinksTo logical-link, MANY2MANY)(3)
      - FROM lag-interface( lag-interface Uses logical-link, MANY2MANY)(3)
      - FROM logical-link( logical-link Uses logical-link, MANY2MANY)
      - FROM p-interface( p-interface LinksTo logical-link, MANY2ONE)
      - FROM service-instance( service-instance Uses logical-link, MANY2MANY)(3)
      - FROM vlan( vlan Uses logical-link, MANY2MANY)(3)

      -(2) IF this LOGICAL-LINK node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this LOGICAL-LINK is DELETED also
      -(4) IF this TO node is deleted, this LOGICAL-LINK is DELETED also
    required:
    - link-name
    - in-maint
    - link-type
    properties:
      link-name:
        type: string
        description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      link-type:
        type: string
        description: Type of logical link, e.g., evc
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      ip-version:
        type: string
        description: v4, v6, or ds for dual stack
      routing-protocol:
        type: string
        description: For example, static or BGP
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      operational-status:
        type: string
        description: Indication of operational status of the logical link.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      link-role:
        type: string
        description: Indication of the network use of the logical link.
      link-name2:
        type: string
        description: Alias or alternate name (CLCI or D1 name).
      link-id:
        type: string
        description: UUID of the logical-link, SDNC generates this.
      circuit-id:
        type: string
        description: Circuit id
      purpose:
        type: string
        description: Reason for this entity, role it is playing
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  logical-links:
    description: |
      Collection of logical connections
    properties:
      logical-link:
        type: array
        items:          
          $ref: "#/definitions/logical-link"
  metadata:
    description: |
      Collection of metadatum (key/value pairs)
    properties:
      metadatum:
        type: array
        items:          
          $ref: "#/definitions/metadatum"
  metadatum:
    description: |
      Key/value pairs
      ###### Related Nodes
      - TO configuration (PARENT of metadatum, metadatum BelongsTo configuration, MANY2ONE)(4)
      - TO connector (PARENT of metadatum, metadatum BelongsTo connector, MANY2ONE)(4)
      - TO cp( metadatum AppliesTo cp, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO generic-vnf( metadatum AppliesTo generic-vnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO image (PARENT of metadatum, metadatum BelongsTo image, MANY2ONE)(4)
      - TO model-ver (PARENT of metadatum, metadatum BelongsTo model-ver, MANY2ONE)(4)
      - TO pnf( metadatum AppliesTo pnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO service-instance (PARENT of metadatum, metadatum BelongsTo service-instance, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this METADATUM is DELETED also
    required:
    - metaname
    - metaval
    properties:
      metaname:
        type: string
      metaval:
        type: string
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
  model:
    description: |
      Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version
      ###### Related Nodes
      - FROM instance-group( instance-group Targets model, MANY2MANY)
      - FROM model-ver (CHILD of model, model-ver BelongsTo model, MANY2ONE)(1)
      - FROM named-query( named-query AppliesTo model, ONE2MANY)
      - FROM named-query-element( named-query-element IsA model, MANY2ONE)

      -(1) IF this MODEL node is deleted, this FROM node is DELETED also
      -MODEL cannot be deleted if related to INSTANCE-GROUP,NAMED-QUERY,NAMED-QUERY-ELEMENT
    required:
    - model-invariant-id
    - model-type
    properties:
      model-invariant-id:
        type: string
        description: Unique identifier corresponding to the main definition of a model in ASDC
      model-type:
        type: string
        description: Type of the model, e.g., service, resource, widget, etc.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-vers:
        type: array
        items:
          $ref: "#/definitions/model-ver"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  model-and-named-query-search:
    description: |
      ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query
    properties:
      query-parameters:
        type: object
        $ref: "#/definitions/query-parameters"
      instance-filters:
        type: object
        $ref: "#/definitions/instance-filters"
      secondary-filts:
        type: object
        $ref: "#/definitions/secondary-filts"
      top-node-type:
        type: string
      secondary-filter-cut-point:
        type: string
  model-constraint:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO model-element (PARENT of model-constraint, model-constraint BelongsTo model-element, MANY2ONE)(4)
      - FROM constrained-element-set (CHILD of model-constraint, constrained-element-set BelongsTo model-constraint, MANY2ONE)(1)

      -(1) IF this MODEL-CONSTRAINT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-CONSTRAINT is DELETED also
    required:
    - model-constraint-uuid
    - constrained-element-set-uuid-to-replace
    properties:
      model-constraint-uuid:
        type: string
      constrained-element-set-uuid-to-replace:
        type: string
      constrained-element-sets:
        type: array
        items:
          $ref: "#/definitions/constrained-element-set"
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
  model-constraints:
    properties:
      model-constraint:
        type: array
        items:          
          $ref: "#/definitions/model-constraint"
  model-element:
    description: |
      Defines how other models combine to make up a higher-level model.
      ###### Related Nodes
      - TO element-choice-set (PARENT of model-element, model-element BelongsTo element-choice-set, MANY2ONE)(4)
      - TO model-element( model-element BelongsTo model-element, MANY2ONE)(4)
      - TO model-ver( model-element IsA model-ver, MANY2ONE)
      - TO model-ver (PARENT of model-element, model-element BelongsTo model-ver, MANY2ONE)(4)
      - FROM constrained-element-set (CHILD of model-element, constrained-element-set BelongsTo model-element, MANY2ONE)(1)
      - FROM model-constraint (CHILD of model-element, model-constraint BelongsTo model-element, MANY2ONE)(1)
      - FROM model-element (PARENT of model-element, model-element BelongsTo model-element, MANY2ONE)(4)

      -(1) IF this MODEL-ELEMENT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-ELEMENT is DELETED also
    required:
    - model-element-uuid
    - new-data-del-flag
    - cardinality
    properties:
      model-element-uuid:
        type: string
      new-data-del-flag:
        type: string
        description: Indicates whether this element was created as part of instantiation from this model
      cardinality:
        type: string
        description: How many of this type of element are required/allowed
      linkage-points:
        type: string
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-elements:
        type: array
        items:
          $ref: "#/definitions/model-element"
        description: Defines how other models combine to make up a higher-level model
      model-constraints:
        type: array
        items:
          $ref: "#/definitions/model-constraint"
        description: Describes new constraints on this model element that are not part of that model's definition
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  model-elements:
    properties:
      model-element:
        type: array
        items:          
          $ref: "#/definitions/model-element"
  model-ver:
    description: |
      Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models
      ###### Related Nodes
      - TO model (PARENT of model-ver, model-ver BelongsTo model, MANY2ONE)(4)
      - FROM metadatum (CHILD of model-ver, metadatum BelongsTo model-ver, MANY2ONE)(1)
      - FROM model-element( model-element IsA model-ver, MANY2ONE)
      - FROM model-element (CHILD of model-ver, model-element BelongsTo model-ver, MANY2ONE)(1)

      -(1) IF this MODEL-VER node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-VER is DELETED also
      -MODEL-VER cannot be deleted if related to MODEL-ELEMENT
    required:
    - model-version-id
    - model-name
    - model-version
    properties:
      model-version-id:
        type: string
        description: Unique identifier corresponding to one version of a model in ASDC
      model-name:
        type: string
        description: Name of the model, which can change from version to version.
      model-version:
        type: string
        description: Version
      distribution-status:
        type: string
        description: Distribution Status
      model-description:
        type: string
        description: Description
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-elements:
        type: array
        items:
          $ref: "#/definitions/model-element"
      metadata:
        type: array
        items:
          $ref: "#/definitions/metadatum"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  model-vers:
    properties:
      model-ver:
        type: array
        items:          
          $ref: "#/definitions/model-ver"
  models:
    description: |
      Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models
    properties:
      model:
        type: array
        items:          
          $ref: "#/definitions/model"
  multicast-configuration:
    description: |
      ###### Related Nodes
      - FROM vlan( vlan Uses multicast-configuration, MANY2MANY)
    required:
    - multicast-configuration-id
    - multicast-protocol
    - rp-type
    properties:
      multicast-configuration-id:
        type: string
        description: Unique id of multicast configuration.
      multicast-protocol:
        type: string
        description: protocol of multicast configuration
      rp-type:
        type: string
        description: rp type of multicast configuration
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  multicast-configurations:
    description: |
      multicast configuration of generic-vnf ip-address
    properties:
      multicast-configuration:
        type: array
        items:          
          $ref: "#/definitions/multicast-configuration"
  named-queries:
    properties:
      named-query:
        type: array
        items:          
          $ref: "#/definitions/named-query"
  named-query:
    description: |
      TBD
      ###### Related Nodes
      - TO model( named-query AppliesTo model, ONE2MANY)
      - FROM named-query-element (CHILD of named-query, named-query-element BelongsTo named-query, ONE2ONE)(1)

      -(1) IF this NAMED-QUERY node is deleted, this FROM node is DELETED also
    required:
    - named-query-uuid
    - named-query-name
    - named-query-version
    properties:
      named-query-uuid:
        type: string
      named-query-name:
        type: string
      named-query-version:
        type: string
      required-input-param:
        type: string
      description:
        type: string
      resource-version:
        type: string
      named-query-elements:
        type: array
        items:
          $ref: "#/definitions/named-query-element"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  named-query-element:
    description: |
      TBD
      ###### Related Nodes
      - TO model( named-query-element IsA model, MANY2ONE)
      - TO named-query-element( named-query-element BelongsTo named-query-element, MANY2ONE)(4)
      - TO named-query (PARENT of named-query-element, named-query-element BelongsTo named-query, ONE2ONE)(4)
      - FROM named-query-element (PARENT of named-query-element, named-query-element BelongsTo named-query-element, MANY2ONE)(4)
      - FROM property-constraint (CHILD of named-query-element, property-constraint BelongsTo named-query-element, MANY2ONE)(1)
      - FROM related-lookup (CHILD of named-query-element, related-lookup BelongsTo named-query-element, MANY2ONE)(1)

      -(1) IF this NAMED-QUERY-ELEMENT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this NAMED-QUERY-ELEMENT is DELETED also
    required:
    - named-query-element-uuid
    properties:
      named-query-element-uuid:
        type: string
      property-collect-list:
        type: string
      resource-version:
        type: string
      property-limit-desc:
        type: string
      do-not-output:
        type: string
      named-query-elements:
        type: array
        items:
          $ref: "#/definitions/named-query-element"
      related-lookups:
        type: array
        items:
          $ref: "#/definitions/related-lookup"
      property-constraints:
        type: array
        items:
          $ref: "#/definitions/property-constraint"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  named-query-elements:
    properties:
      named-query-element:
        type: array
        items:          
          $ref: "#/definitions/named-query-element"
  network:
    description: |
      Namespace for network inventory resources.
    properties:
      logical-links:
        type: array
        items:
          $ref: "#/definitions/logical-link"
      site-pair-sets:
        type: array
        items:
          $ref: "#/definitions/site-pair-set"
      vpn-bindings:
        type: array
        items:
          $ref: "#/definitions/vpn-binding"
      vpls-pes:
        type: array
        items:
          $ref: "#/definitions/vpls-pe"
      multicast-configurations:
        type: array
        items:
          $ref: "#/definitions/multicast-configuration"
      vces:
        type: array
        items:
          $ref: "#/definitions/vce"
      vnfcs:
        type: array
        items:
          $ref: "#/definitions/vnfc"
      l3-networks:
        type: array
        items:
          $ref: "#/definitions/l3-network"
      network-policies:
        type: array
        items:
          $ref: "#/definitions/network-policy"
      generic-vnfs:
        type: array
        items:
          $ref: "#/definitions/generic-vnf"
      lag-links:
        type: array
        items:
          $ref: "#/definitions/lag-link"
      newvces:
        type: array
        items:
          $ref: "#/definitions/newvce"
      pnfs:
        type: array
        items:
          $ref: "#/definitions/pnf"
      physical-links:
        type: array
        items:
          $ref: "#/definitions/physical-link"
      ipsec-configurations:
        type: array
        items:
          $ref: "#/definitions/ipsec-configuration"
      route-table-references:
        type: array
        items:
          $ref: "#/definitions/route-table-reference"
      instance-groups:
        type: array
        items:
          $ref: "#/definitions/instance-group"
      zones:
        type: array
        items:
          $ref: "#/definitions/zone"
      configurations:
        type: array
        items:
          $ref: "#/definitions/configuration"
      forwarding-paths:
        type: array
        items:
          $ref: "#/definitions/forwarding-path"
      collections:
        type: array
        items:
          $ref: "#/definitions/collection"
      vlan-tags:
        type: array
        items:
          $ref: "#/definitions/vlan-tag"
      connectivities:
        type: array
        items:
          $ref: "#/definitions/connectivity"
      lan-port-configs:
        type: array
        items:
          $ref: "#/definitions/lan-port-config"
      network-resources:
        type: array
        items:
          $ref: "#/definitions/network-resource"
      site-resources:
        type: array
        items:
          $ref: "#/definitions/site-resource"
      sdwan-vpns:
        type: array
        items:
          $ref: "#/definitions/sdwan-vpn"
      devices:
        type: array
        items:
          $ref: "#/definitions/device"
      wan-port-configs:
        type: array
        items:
          $ref: "#/definitions/wan-port-config"
      ext-aai-networks:
        type: array
        items:
          $ref: "#/definitions/ext-aai-network"
  network-policies:
    properties:
      network-policy:
        type: array
        items:          
          $ref: "#/definitions/network-policy"
  network-policy:
    description: |
      ###### Related Nodes
      - FROM allotted-resource( allotted-resource Uses network-policy, ONE2ONE)
      - FROM l3-network( l3-network Uses network-policy, MANY2MANY)
    required:
    - network-policy-id
    properties:
      network-policy-id:
        type: string
        description: UUID representing unique key to this instance
      network-policy-fqdn:
        type: string
        description: Contrail FQDN for the policy
      heat-stack-id:
        type: string
        description: ID for the openStack Heat instance
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  network-profile:
    description: |
      Network profile populated by SDN-GP for SNMP
      ###### Related Nodes
      - TO generic-vnf( network-profile AppliesTo generic-vnf, MANY2MANY)
    required:
    - nm-profile-name
    properties:
      nm-profile-name:
        type: string
        description: Unique name of network profile.
      community-string:
        type: string
        description: Encrypted SNMP community string
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  network-profiles:
    description: |
      Collection of network profiles
    properties:
      network-profile:
        type: array
        items:          
          $ref: "#/definitions/network-profile"
  network-resource:
    description: |
      Instance of a network-resource
      ###### Related Nodes
      - TO ext-aai-network( network-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO vpn-binding( network-resource Uses vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM pnf( pnf LinksTo network-resource, MANY2MANY)
      For CCVPN Usecase(1)

      -(1) IF this NETWORK-RESOURCE node is deleted, this FROM node is DELETED also
      -(2) IF this NETWORK-RESOURCE node is deleted, this TO node is DELETED also
    required:
    - network-id
    properties:
      network-id:
        type: string
        description: Uniquely identifies this network-resource by id
      provider-id:
        type: string
        description: Store the id of the provider of this network-resource.
      client-id:
        type: string
        description: Store the id of the client of this network-resource.
      te-topo-id:
        type: string
        description: Store the id of the te-topo of this network-resource.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  network-resources:
    description: |
      Collection of network-resources
    properties:
      network-resource:
        type: array
        items:          
          $ref: "#/definitions/network-resource"
  network-technologies:
    description: |
       The network-technology object is used to capture the supported network technologies of a cloud-region.
    properties:
      network-technology:
        type: array
        items:          
          $ref: "#/definitions/network-technology"
  network-technology:
    description: |
      The network-technology object is used to capture the supported network technologies of a cloud-region.
      ###### Related Nodes
      - FROM cloud-region( cloud-region Uses network-technology, MANY2MANY)
    required:
    - network-technology-id
    - network-technology-name
    properties:
      network-technology-id:
        type: string
        description: Unique identifier of the network-technology object (UUID)
      network-technology-name:
        type: string
        description: The network-technology  that a cloud-region can support. Current valid values- CONTRAIL AIC_SR_IOV OVS STANDARD-SR-IOV
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  newvce:
    description: |
      This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce.
      ###### Related Nodes
      - FROM l-interface (CHILD of newvce, l-interface BelongsTo newvce, MANY2ONE)(1)

      -(1) IF this NEWVCE node is deleted, this FROM node is DELETED also
    required:
    - vnf-id2
    - vnf-name
    - vnf-type
    properties:
      vnf-id2:
        type: string
        description: Unique id of VNF, can't use same attribute name right now until we promote this new object
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      license-key:
        type: string
        description: OBSOLETE -  do not use
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address).
      equipment-role:
        type: string
        description: Client should send valid enumerated value.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      ipv4-loopback0-address:
        type: string
        description: v4 Loopback0 address
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO.
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/definitions/l-interface"
  newvces:
    description: |
      This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce.
    properties:
      newvce:
        type: array
        items:          
          $ref: "#/definitions/newvce"
  nodes:
    properties:
      inventory-item-data:
        type: array
        items:
          $ref: "#/definitions/inventory-item-data"
  nos-server:
    description: |
      nos-server is the execution environment that will have images, certain versions of VNOS, running on it.
      ###### Related Nodes
      - TO pserver( nos-server HostedOn pserver, ONE2ONE)
      - TO tenant (PARENT of nos-server, nos-server BelongsTo tenant, MANY2ONE)
      - FROM generic-vnf( generic-vnf HostedOn nos-server, MANY2ONE)
    required:
    - nos-server-id
    - nos-server-name
    - vendor
    - nos-server-selflink
    - in-maint
    properties:
      nos-server-id:
        type: string
        description: Unique identifier for this nos relative to its tenant
      nos-server-name:
        type: string
        description: Name of nos
      vendor:
        type: string
        description: uCPE vendor
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      nos-server-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  nos-servers:
    description: |
      nos-server is the execution environment that will have images, certain versions of VNOS, running on it.
    properties:
      nos-server:
        type: array
        items:          
          $ref: "#/definitions/nos-server"
  notification-event:
    properties:
      cambria.partition:
        type: string
      notification-event-header:
        type: object
        $ref: "#/definitions/notification-event-header"
  notification-event-header:
    properties:
      id:
        type: string
      timestamp:
        type: string
      source-name:
        type: string
      domain:
        type: string
      sequence-number:
        type: string
      severity:
        type: string
      event-type:
        type: string
      version:
        type: string
      action:
        type: string
      entity-type:
        type: string
      top-entity-type:
        type: string
      entity-link:
        type: string
      status:
        type: string
  notify:
    required:
    - event-id
    properties:
      event-id:
        type: string
      node-type:
        type: string
      event-trigger:
        type: string
      key-data:
        type: array
        items:          
          $ref: "#/definitions/key-data"
      selflink:
        type: string
  oam-network:
    description: |
      OAM network, to be deprecated shortly.  Do not use for new purposes. 
      ###### Related Nodes
      - TO cloud-region (PARENT of oam-network, oam-network BelongsTo cloud-region, MANY2ONE)
      - TO complex( oam-network AppliesTo complex, MANY2MANY)
      - TO service-capability( oam-network AppliesTo service-capability, MANY2MANY)
    required:
    - network-uuid
    - network-name
    - cvlan-tag
    properties:
      network-uuid:
        type: string
        description: UUID of the network. Unique across a cloud-region
      network-name:
        type: string
        description: Name of the network.
      cvlan-tag:
        type: integer
        format: int64
        description: cvlan-id
      ipv4-oam-gateway-address:
        type: string
        description: Used for VNF firewall rule so customer cannot send customer traffic over this oam network
      ipv4-oam-gateway-address-prefix-length:
        type: integer
        format: int32
        description: Used for VNF firewall rule so customer cannot send customer traffic over this oam network
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  oam-networks:
    description: |
      Collection of OAM networks, to be deprecated shortly.  Do not use for new purposes. 
    properties:
      oam-network:
        type: array
        items:          
          $ref: "#/definitions/oam-network"
  operational-environment:
    description: |
      It is a logical partition of the cloud which allows to have multiple environments in the production AIC.
      ###### Related Nodes
      - TO operational-environment( operational-environment Uses operational-environment, MANY2MANY)
      - FROM operational-environment( operational-environment Uses operational-environment, MANY2MANY)
    required:
    - operational-environment-id
    - operational-environment-name
    - operational-environment-type
    - operational-environment-status
    - tenant-context
    - workload-context
    properties:
      operational-environment-id:
        type: string
        description: UUID of an operational environment
      operational-environment-name:
        type: string
        description: Operational Environment name
      operational-environment-type:
        type: string
        description: Operational Environment Type.
      operational-environment-status:
        type: string
        description: Status
      tenant-context:
        type: string
        description: Tenant Context.
      workload-context:
        type: string
        description: Workload Context.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  operational-environments:
    description: |
      a logical partition of the cloud which allows to have multiple environments in the production AIC.
    properties:
      operational-environment:
        type: array
        items:          
          $ref: "#/definitions/operational-environment"
  overloaded-model:
    description: |
      Allows for legacy POST of old-style and new-style models
    required:
    - model-invariant-id
    - model-name-version-id
    - model-type
    - model-name
    - model-id
    - model-version
    properties:
      model-invariant-id:
        type: string
        description: Unique identifier corresponding to the main definition of a model in ASDC
      model-name-version-id:
        type: string
        description: Unique identifier corresponding to one version of a model in ASDC
      model-type:
        type: string
        description: Type of the model, e.g., service, resource, widget, etc.
      model-name:
        type: string
        description: Name of the model, which can change from version to version.
      model-id:
        type: string
        description: Invariant unique ID which does not change from version to version
      model-version:
        type: string
        description: Version
      model-description:
        type: string
        description: Description
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-vers:
        type: object
        $ref: "#/definitions/model-vers"
      relationship-list:
        type: object
        $ref: "#/definitions/relationship-list"
  owning-entities:
    description: |
      Collection of owning-entities
    properties:
      owning-entity:
        type: array
        items:          
          $ref: "#/definitions/owning-entity"
  owning-entity:
    description: |
      describes an owning-entity
      ###### Related Nodes
      - FROM service-instance( service-instance BelongsTo owning-entity, MANY2ONE)
    required:
    - owning-entity-id
    - owning-entity-name
    properties:
      owning-entity-id:
        type: string
        description: UUID of an owning entity
      owning-entity-name:
        type: string
        description: Owning entity name
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  p-interface:
    description: |
      Physical interface (e.g., nic)
      ###### Related Nodes
      - TO logical-link( p-interface LinksTo logical-link, MANY2ONE)
      - TO pnf (PARENT of p-interface, p-interface BindsTo pnf, MANY2ONE)(4)
      - TO pserver (PARENT of p-interface, p-interface BindsTo pserver, MANY2ONE)(4)
      - TO vpls-pe (PARENT of p-interface, p-interface BindsTo vpls-pe, MANY2ONE)(4)
      - TO physical-link( p-interface LinksTo physical-link, MANY2ONE)(2)
      - FROM allotted-resource( allotted-resource Uses p-interface, ONE2MANY)
      AAI-1925 For CCVPN Usecase
      - FROM forwarder( forwarder ForwardsTo p-interface, MANY2MANY)
      - FROM l-interface (CHILD of p-interface, l-interface BindsTo p-interface, MANY2ONE)(1)
      - FROM lag-interface( lag-interface Uses p-interface, MANY2MANY)
      - FROM sriov-pf (CHILD of p-interface, sriov-pf BelongsTo p-interface, ONE2ONE)(1)
      - FROM vpn-binding( vpn-binding BindsTo p-interface, ONE2MANY)
      For CCVPN Usecase

      -(1) IF this P-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this P-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this P-INTERFACE is DELETED also
    required:
    - interface-name
    - in-maint
    properties:
      interface-name:
        type: string
        description: Name that identifies the physical interface
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details.
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      port-description:
        type: string
        description: Nature of the services and connectivity on this port.
      equipment-identifier:
        type: string
        description: CLEI or other specification for p-interface hardware.
      interface-role:
        type: string
        description: Role specification for p-interface hardware.
      interface-type:
        type: string
        description: Indicates the physical properties of the interface.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      mac-addresss:
        type: string
        description: MAC Address of the p-interface.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      inv-status:
        type: string
        description: inventory status
      network-ref:
        type: string
        description: Store the network-ref of this p-interface. Derived from ietf-restconf-notification that identifies a termination-point.
      transparent:
        type: string
        description: Store the transparent value of this p-interface.
      operational-status:
        type: string
        description: oper Status of this p-interface.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      sriov-pfs:
        type: array
        items:
          $ref: "#/definitions/sriov-pf"
      l-interfaces:
        type: array
        items:
          $ref: "#/definitions/l-interface"
  p-interfaces:
    description: |
      Collection of physical interfaces.
    properties:
      p-interface:
        type: array
        items:          
          $ref: "#/definitions/p-interface"
  physical-link:
    description: |
      Collection of physical connections, typically between p-interfaces
      ###### Related Nodes
      - FROM p-interface( p-interface LinksTo physical-link, MANY2ONE)(3)

      -(3) IF this FROM node is deleted, this PHYSICAL-LINK is DELETED also
    required:
    - link-name
    properties:
      link-name:
        type: string
        description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      circuit-id:
        type: string
        description: Circuit it
      dual-mode:
        type: string
        description: Dual access mode (e.g., primary, secondary
      management-option:
        type: string
        description: To provide information on who manages this circuit. A&AI or 3rd party transport provider
      service-provider-name:
        type: string
        description: Name of the service Provider on this link.
      service-provider-bandwidth-up-value:
        type: integer
        format: int32
        description: Upstream Bandwidth value agreed with the service provider
      service-provider-bandwidth-up-units:
        type: string
        description: Units for the upstream BW value
      service-provider-bandwidth-down-value:
        type: integer
        format: int32
        description: Downstream Bandwidth value agreed with the service provider
      service-provider-bandwidth-down-units:
        type: string
        description: Units for downstream BW value
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  physical-links:
    description: |
      Collection of physical connections, typically between p-interfaces
    properties:
      physical-link:
        type: array
        items:          
          $ref: "#/definitions/physical-link"
  platform:
    description: |
      describes a platform
      ###### Related Nodes
      - TO generic-vnf( platform Uses generic-vnf, MANY2MANY)
      - TO l3-network( platform Uses l3-network, MANY2MANY)
    required:
    - platform-name
    properties:
      platform-name:
        type: string
        description: Name of the platform
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  platforms:
    description: |
      Collection of platforms
    properties:
      platform:
        type: array
        items:          
          $ref: "#/definitions/platform"
  pnf:
    description: |
      PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE.
      ###### Related Nodes
      - TO complex( pnf LocatedIn complex, MANY2ONE)
      - TO ext-aai-network( pnf BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO instance-group( pnf MemberOf instance-group, MANY2MANY)
      - TO network-resource( pnf LinksTo network-resource, MANY2MANY)
      For CCVPN Usecase(4)
      - TO zone( pnf LocatedIn zone, MANY2ONE)
      - FROM configuration( configuration AppliesTo pnf, MANY2MANY)
      - FROM esr-thirdparty-sdnc( esr-thirdparty-sdnc AppliesTo pnf, ONE2MANY)
      - FROM generic-vnf( generic-vnf HostedOn pnf, MANY2MANY)
      - FROM lag-interface (CHILD of pnf, lag-interface BindsTo pnf, MANY2ONE)(1)
      - FROM logical-link( logical-link BridgedTo pnf, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo pnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM p-interface (CHILD of pnf, p-interface BindsTo pnf, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf pnf, ONE2MANY)
      - FROM software-version (CHILD of pnf, software-version BelongsTo pnf, MANY2ONE)
      - FROM vrf (CHILD of pnf, vrf BelongsTo pnf, MANY2ONE)
      A vrf belongs to a pnf.(1)

      -(1) IF this PNF node is deleted, this FROM node is DELETED also
      -(2) IF this PNF node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this PNF is DELETED also
      -PNF cannot be deleted if related to NETWORK-RESOURCE,SOFTWARE-VERSION
    required:
    - pnf-name
    - in-maint
    properties:
      pnf-name:
        type: string
        description: unique name of Physical Network Function.
      pnf-name2:
        type: string
        description: name of Physical Network Function.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details.
      pnf-name2-source:
        type: string
        description: source of name2
      pnf-id:
        type: string
        description: id of pnf
      equip-type:
        type: string
        description: Equipment type.  Source of truth should define valid values.
      equip-vendor:
        type: string
        description: Equipment vendor.  Source of truth should define valid values.
      equip-model:
        type: string
        description: Equipment model.  Source of truth should define valid values.
      management-option:
        type: string
        description: identifier of managed customer
      orchestration-status:
        type: string
        description: Orchestration status of this pnf
      ipaddress-v4-oam:
        type: string
        description: ipv4-oam-address with new naming convention for IP addresses
      sw-version:
        type: string
        description: sw-version is the version of SW for the hosted application on the PNF.
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      frame-id:
        type: string
        description: ID of the physical frame (relay rack) where pnf is installed.
      serial-number:
        type: string
        description: Serial number of the device
      ipaddress-v4-loopback-0:
        type: string
        description: IPV4 Loopback 0 address
      ipaddress-v6-loopback-0:
        type: string
        description: IPV6 Loopback 0 address
      ipaddress-v4-aim:
        type: string
        description: IPV4 AIM address
      ipaddress-v6-aim:
        type: string
        description: IPV6 AIM address
      ipaddress-v6-oam:
        type: string
        description: IPV6 OAM address
      inv-status:
        type: string
        description: CANOPI's inventory status.  Only set with values exactly as defined by CANOPI.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      prov-status:
        type: string
        description: Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]
      nf-role:
        type: string
        description: Nf Role is the role performed by this instance in the network.
      admin-status:
        type: string
        description: admin Status of this PNF
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: The ASDC model id for this resource  model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: The ASDC model version for this resource  model.
        also requires: model-invariant-id
      pnf-ipv4-address:
        type: string
        description: This is the IP address (IPv4) for the PNF itself. This is the IPv4 address that the PNF iself can be accessed at.
      pnf-ipv6-address:
        type: string
        description: This is the IP address (IPv6) for the PNF itself. This is the IPv6 address that the PNF iself can be accessed at.
      software-versions:
        type: array
        items:
          $ref: "#/definitions/software-version"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      p-interfaces:
        type: array
        items:
          $ref: "#/definitions/p-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/definitions/lag-interface"
      vrfs:
        type: array
        items:
          $ref: "#/definitions/vrf"
  pnfs:
    description: |
      Collection of Physical Network Functions.
    properties:
      pnf:
        type: array
        items:          
          $ref: "#/definitions/pnf"
  port-group:
    description: |
      Used to capture the network interfaces of this VCE
      ###### Related Nodes
      - TO vce (PARENT of port-group, port-group BelongsTo vce, MANY2ONE)(4)
      - FROM cvlan-tag (CHILD of port-group, cvlan-tag BelongsTo port-group, MANY2ONE)(1)

      -(1) IF this PORT-GROUP node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this PORT-GROUP is DELETED also
    required:
    - interface-id
    - orchestration-status
    properties:
      interface-id:
        type: string
        description: Unique ID of the interface
      neutron-network-id:
        type: string
        description: Neutron network id of this Interface
      neutron-network-name:
        type: string
        description: Neutron network name of this Interface
      interface-role:
        type: string
        description: Role assigned to this Interface, should use values as defined in ECOMP Yang models.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      port-group-id:
        type: string
        description: Unique ID for port group in vmware
      port-group-name:
        type: string
        description: Likely to duplicate value of neutron network name
      switch-name:
        type: string
        description: DVS or standard switch name (should be non-null for port groups associated with DVS)
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      cvlan-tags:
        type: array
        items:
          $ref: "#/definitions/cvlan-tag-entry"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  port-groups:
    properties:
      port-group:
        type: array
        items:          
          $ref: "#/definitions/port-group"
  project:
    description: |
      describes the project
      ###### Related Nodes
      - TO service-instance( project Uses service-instance, ONE2MANY)
    required:
    - project-name
    properties:
      project-name:
        type: string
        description: Name of the project deploying a service
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  projects:
    description: |
      Collection of projects
    properties:
      project:
        type: array
        items:          
          $ref: "#/definitions/project"
  properties:
    description: |
      Property holder for query properties or instance properties
    properties:
      property-name:
        type: string
      property-value:
        type: string
  property-constraint:
    description: |
      TBD
      ###### Related Nodes
      - TO named-query-element (PARENT of property-constraint, property-constraint BelongsTo named-query-element, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this PROPERTY-CONSTRAINT is DELETED also
    required:
    - property-constraint-uuid
    - constraint-type
    - property-name
    - property-value
    properties:
      property-constraint-uuid:
        type: string
      constraint-type:
        type: string
      property-name:
        type: string
      property-value:
        type: string
      resource-version:
        type: string
  property-constraints:
    properties:
      property-constraint:
        type: array
        items:          
          $ref: "#/definitions/property-constraint"
  pserver:
    description: |
      Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver.
      ###### Related Nodes
      - TO availability-zone( pserver MemberOf availability-zone, MANY2ONE)
      - TO cloud-region( pserver LocatedIn cloud-region, MANY2ONE)
      - TO complex( pserver LocatedIn complex, MANY2ONE)
      - TO group-assignment( pserver MemberOf group-assignment, MANY2ONE)
      - TO zone( pserver LocatedIn zone, MANY2ONE)
      - FROM flavor( flavor CanBeInstantiatedIn pserver, MANY2MANY)
      HPA Capacity getting the compute nodes from given flavor
      - FROM generic-vnf( generic-vnf HostedOn pserver, MANY2MANY)
      - FROM hpa-capacity (CHILD of pserver, hpa-capacity BelongsTo pserver, MANY2ONE)
      HPA Capacity KV for given compute node(1)
      - FROM lag-interface (CHILD of pserver, lag-interface BindsTo pserver, MANY2ONE)(1)
      - FROM logical-link( logical-link BridgedTo pserver, MANY2MANY)
      - FROM nos-server( nos-server HostedOn pserver, ONE2ONE)
      - FROM p-interface (CHILD of pserver, p-interface BindsTo pserver, MANY2ONE)(1)
      - FROM vserver( vserver HostedOn pserver, MANY2ONE)

      -(1) IF this PSERVER node is deleted, this FROM node is DELETED also
      -PSERVER cannot be deleted if related to GROUP-ASSIGNMENT,GENERIC-VNF,LOGICAL-LINK,NOS-SERVER,VSERVER
    required:
    - hostname
    - in-maint
    properties:
      hostname:
        type: string
        description: Value from executing hostname on the compute node.
      ptnii-equip-name:
        type: string
        description: PTNII name
      number-of-cpus:
        type: integer
        format: int32
        description: Number of cpus
      disk-in-gigabytes:
        type: integer
        format: int32
        description: Disk size, in GBs
      ram-in-megabytes:
        type: integer
        format: int32
        description: RAM size, in MBs
      equip-type:
        type: string
        description: Equipment type.  Source of truth should define valid values.
      equip-vendor:
        type: string
        description: Equipment vendor.  Source of truth should define valid values.
      equip-model:
        type: string
        description: Equipment model.  Source of truth should define valid values.
      fqdn:
        type: string
        description: Fully-qualified domain name
      pserver-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      ipv4-oam-address:
        type: string
        description: Used to configure device, also used for troubleshooting and is IP used for traps generated by device.
      serial-number:
        type: string
        description: Serial number, may be queried
      ipaddress-v4-loopback-0:
        type: string
        description: IPV4 Loopback 0 address
      ipaddress-v6-loopback-0:
        type: string
        description: IPV6 Loopback 0 address
      ipaddress-v4-aim:
        type: string
        description: IPV4 AIM address
      ipaddress-v6-aim:
        type: string
        description: IPV6 AIM address
      ipaddress-v6-oam:
        type: string
        description: IPV6 OAM address
      inv-status:
        type: string
        description: CANOPI's inventory status.  Only set with values exactly as defined by CANOPI.
      pserver-id:
        type: string
        description: ID of Pserver
      internet-topology:
        type: string
        description: internet topology of Pserver
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      pserver-name2:
        type: string
        description: alternative pserver name
      purpose:
        type: string
        description: purpose of pserver
      prov-status:
        type: string
        description: Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]
      management-option:
        type: string
        description: Indicates who owns and or manages the device.
      host-profile:
        type: string
        description: The host profile that defines the configuration of the pserver.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      p-interfaces:
        type: array
        items:
          $ref: "#/definitions/p-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/definitions/lag-interface"
      hpa-capacity:
        type: array
        items:          
          $ref: "#/definitions/hpa-capacity"
  pservers:
    description: |
      Collection of compute hosts.
    properties:
      pserver:
        type: array
        items:          
          $ref: "#/definitions/pserver"
  query-parameters:
    description: |
      QueryParameters for performing a named-query or model query
    properties:
      named-query:
        type: object
        $ref: "#/definitions/named-query"
      overloaded-model:
        type: object
        $ref: "#/definitions/overloaded-model"
  related-lookup:
    description: |
      TBD
      ###### Related Nodes
      - TO named-query-element (PARENT of related-lookup, related-lookup BelongsTo named-query-element, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this RELATED-LOOKUP is DELETED also
    required:
    - related-lookup-uuid
    - source-node-type
    - source-node-property
    - target-node-type
    - target-node-property
    properties:
      related-lookup-uuid:
        type: string
      source-node-type:
        type: string
      source-node-property:
        type: string
      target-node-type:
        type: string
      target-node-property:
        type: string
      property-collect-list:
        type: string
      resource-version:
        type: string
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  related-lookups:
    properties:
      related-lookup:
        type: array
        items:          
          $ref: "#/definitions/related-lookup"
  related-to-property:
    properties:
      property-key:
        type: string
        description: Key part of a key/value pair
      property-value:
        type: string
        description: Value part of a key/value pair
  relationship:
    description: |
      dictionary of relationship
    type: object
    properties:
      relationship:
        type: array
        items:
          $ref: "#/definitions/relationship-dict"
  relationship-data:
    required:
    - relationship-key
    - relationship-value
    properties:
      relationship-key:
        type: string
        description: A keyword provided by A&AI to indicate an attribute.
      relationship-value:
        type: string
        description: Value of the attribute.
  relationship-dict:
    properties:
      related-to:
        type: string
        description: A keyword provided by A&AI to indicate type of node.
      relationship-label:
        type: string
        description: The edge label for this relationship.
      related-link:
        type: string
        description: URL to the object in A&AI.
      relationship-data:
        type: array
        items:          
          $ref: "#/definitions/relationship-data"
  relationship-list:
    properties:
      relationship:
        type: array
        items:          
          $ref: "#/definitions/relationship"
  reserved-prop-names:
    description: |
      Internal map to define some reserved properties of a vertex
    properties:
      last-mod-source-of-truth:
        type: string
      aai-node-type:
        type: string
      aai-created-ts:
        type: integer
        format: int64
      aai-unique-key:
        type: string
      aai-last-mod-ts:
        type: integer
        format: int64
      source-of-truth:
        type: string
      aai-uri:
        type: string
  response-list:
    description: |
      Response container for the results of a named-query or model query
    properties:
      inventory-response-items:
        type: object
        $ref: "#/definitions/inventory-response-items"
  result-data:
    properties:
      resource-type:
        type: string
        description: The specific type of node in the A&AI graph
      resource-link:
        type: string
        description: The URL to the specific resource
  route-table-reference:
    description: |
      Openstack route table reference.
      ###### Related Nodes
      - FROM l3-network( l3-network Uses route-table-reference, MANY2MANY)
    required:
    - route-table-reference-id
    - route-table-reference-fqdn
    properties:
      route-table-reference-id:
        type: string
        description: Route Table Reference id, UUID assigned to this instance.
      route-table-reference-fqdn:
        type: string
        description: FQDN entry in the route table.
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  route-table-references:
    description: |
      Collection of openstack route table references
    properties:
      route-table-reference:
        type: array
        items:          
          $ref: "#/definitions/route-table-reference"
  route-target:
    description: |
      Route target information
      ###### Related Nodes
      - TO vpn-binding (PARENT of route-target, route-target BelongsTo vpn-binding, MANY2ONE)(4)
      - TO vrf (PARENT of route-target, route-target BelongsTo vrf, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this ROUTE-TARGET is DELETED also
    required:
    - global-route-target
    - route-target-role
    properties:
      global-route-target:
        type: string
        description: Number used to identify an RT, globally unique in the network
      route-target-role:
        type: string
        description: Role assigned to this route target
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  route-targets:
    description: |
      Collection of route target information
    properties:
      route-target:
        type: array
        items:          
          $ref: "#/definitions/route-target"
  routing-instance:
    description: |
      ###### Related Nodes
      - TO site-pair-set (PARENT of routing-instance, routing-instance BelongsTo site-pair-set, MANY2ONE)(4)
      - FROM site-pair (CHILD of routing-instance, site-pair BelongsTo routing-instance, MANY2ONE)(1)

      -(1) IF this ROUTING-INSTANCE node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this ROUTING-INSTANCE is DELETED also
    required:
    - routing-instance-id
    properties:
      routing-instance-id:
        type: string
        description: Unique id of routing instance
      rpm-owner:
        type: string
        description: rpm owner
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      site-pairs:
        type: array
        items:
          $ref: "#/definitions/site-pair"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  routing-instances:
    description: |
      set of probes related to generic-vnf routing instance
    properties:
      routing-instance:
        type: array
        items:          
          $ref: "#/definitions/routing-instance"
  sdn-zone-response:
    properties:
      oam-networks:
        type: object
        $ref: "#/definitions/oam-networks"
      az-and-dvs-switches:
        type: array
        items:          
          $ref: "#/definitions/az-and-dvs-switches"
  sdwan-vpn:
    description: |
      Instance of an sdwan-vpn
      ###### Related Nodes
      - TO ext-aai-network( sdwan-vpn BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( sdwan-vpn PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - TO tenant( sdwan-vpn PartOf tenant, ONE2MANY)
      For CCVPN Usecase
      - TO vpn-binding( sdwan-vpn PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this SDWAN-VPN node is deleted, this TO node is DELETED also
    required:
    - sdwan-vpn-id
    properties:
      sdwan-vpn-id:
        type: string
        description: Uniquely identifies this sdwan-vpn by id
      sdwan-vpn-name:
        type: string
        description: Store the name of this sdwan-vpn.
      vxlan-id:
        type: string
        description: Store the vxlan-id of this sdwan-vpn.
      topology:
        type: string
        description: Store the topology of this sdwan-vpn.
      tenant-id:
        type: string
        description: Store the tenant-id of this sdwan-vpn.
      vpn-id:
        type: string
        description: Store the vpn-id of this sdwan-vpn.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  sdwan-vpns:
    description: |
      Collection of sdwan-vpns
    properties:
      sdwan-vpn:
        type: array
        items:          
          $ref: "#/definitions/sdwan-vpn"
  search:
    properties:
      edge-tag-query-result:
        type: object
        $ref: "#/definitions/edge-tag-query-result"
      edge-tag-query-request:
        type: object
        $ref: "#/definitions/edge-tag-query-request"
      search-results:
        type: object
        $ref: "#/definitions/search-results"
      sdn-zone-response:
        type: object
        $ref: "#/definitions/sdn-zone-response"
  search-results:
    properties:
      result-data:
        type: array
        items:          
          $ref: "#/definitions/result-data"
  secondary-filt:
    description: |
      SecondaryFilt for performing a named-query or model query
  secondary-filter:
    properties:
      property-name:
        type: string
      filter-type:
        type: string
      property-value:
        type: string
  secondary-filts:
    description: |
      SecondaryFilts for performing a named-query or model query
    properties:
      secondary-filt:
        type: array
        items:          
          $ref: "#/definitions/secondary-filt"
  segmentation-assignment:
    description: |
      Openstack segmentation assignment.
      ###### Related Nodes
      - TO l3-network (PARENT of segmentation-assignment, segmentation-assignment BelongsTo l3-network, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this SEGMENTATION-ASSIGNMENT is DELETED also
    required:
    - segmentation-id
    properties:
      segmentation-id:
        type: string
        description: Route Table Reference id, UUID assigned to this instance.
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  segmentation-assignments:
    description: |
      Collection of openstack segmentation assignments
    properties:
      segmentation-assignment:
        type: array
        items:          
          $ref: "#/definitions/segmentation-assignment"
  service:
    description: |
      Stand-in for service model definitions.  Likely to be deprecated in favor of models from ASDC.  Does not strictly map to ASDC services.
    required:
    - service-id
    - service-description
    properties:
      service-id:
        type: string
        description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
      service-description:
        type: string
        description: Description of the service
      service-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      service-version:
        type: string
        description: service version
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  service-capabilities:
    description: |
      Collection of service capabilities.
    properties:
      service-capability:
        type: array
        items:          
          $ref: "#/definitions/service-capability"
  service-capability:
    description: |
      Early definition of server/resource pairings, likely to be replaced by models.  No new use should be made of this.
      ###### Related Nodes
      - FROM availability-zone( availability-zone AppliesTo service-capability, MANY2MANY)
      - FROM oam-network( oam-network AppliesTo service-capability, MANY2MANY)

      -SERVICE-CAPABILITY cannot be deleted if related to AVAILABILITY-ZONE,OAM-NETWORK
    required:
    - service-type
    - vnf-type
    properties:
      service-type:
        type: string
        description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  service-design-and-creation:
    description: |
      Namespace for objects managed by ASDC
    properties:
      vnf-images:
        type: array
        items:
          $ref: "#/definitions/vnf-image"
      services:
        type: array
        items:
          $ref: "#/definitions/service"
      service-capabilities:
        type: array
        items:
          $ref: "#/definitions/service-capability"
      models:
        type: array
        items:
          $ref: "#/definitions/model"
      named-queries:
        type: array
        items:
          $ref: "#/definitions/named-query"
  service-instance:
    description: |
      Instance of a service
      ###### Related Nodes
      - TO allotted-resource( service-instance Uses allotted-resource, MANY2MANY)
      - TO collection( service-instance ComposedOf collection, ONE2ONE)
      - TO configuration( service-instance Uses configuration, ONE2MANY)
      - TO configuration( service-instance ComposedOf configuration, MANY2MANY)
      - TO connector( service-instance Uses connector, MANY2MANY)
      - TO ctag-assignment( service-instance Uses ctag-assignment, ONE2MANY)
      - TO cvlan-tag( service-instance ComposedOf cvlan-tag, MANY2MANY)
      - TO generic-vnf( service-instance ComposedOf generic-vnf, ONE2MANY)
      - TO instance-group( service-instance Uses instance-group, ONE2MANY)
      MSO creates this edge on VNF Group Service creation
      - TO instance-group( service-instance MemberOf instance-group, MANY2MANY)
      - TO l3-network( service-instance ComposedOf l3-network, ONE2MANY)
      - TO logical-link( service-instance Uses logical-link, MANY2MANY)(2)
      - TO owning-entity( service-instance BelongsTo owning-entity, MANY2ONE)
      - TO pnf( service-instance ComposedOf pnf, ONE2MANY)
      - TO service-instance( service-instance ComposedOf service-instance, ONE2MANY)
      - TO service-subscription (PARENT of service-instance, service-instance BelongsTo service-subscription, MANY2ONE)(4)
      - TO vce( service-instance ComposedOf vce, ONE2MANY)
      - TO vlan( service-instance ComposedOf vlan, ONE2MANY)
      - TO zone( service-instance LocatedIn zone, MANY2ONE)
      - FROM allotted-resource (CHILD of service-instance, allotted-resource BelongsTo service-instance, MANY2ONE)(1)
      - FROM connectivity( connectivity PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM device( device PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM forwarding-path( forwarding-path AppliesTo service-instance, MANY2ONE)(1)
      - FROM lan-port-config( lan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM metadatum (CHILD of service-instance, metadatum BelongsTo service-instance, MANY2ONE)(1)
      - FROM project( project Uses service-instance, ONE2MANY)
      - FROM sdwan-vpn( sdwan-vpn PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM service-instance( service-instance ComposedOf service-instance, ONE2MANY)
      - FROM site-resource( site-resource PartOf service-instance, MANY2MANY)
      For CCVPN Usecase
      - FROM sp-partner( sp-partner PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM wan-port-config( wan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(1) IF this SERVICE-INSTANCE node is deleted, this FROM node is DELETED also
      -(2) IF this SERVICE-INSTANCE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this SERVICE-INSTANCE is DELETED also
    required:
    - service-instance-id
    properties:
      service-instance-id:
        type: string
        description: Uniquely identifies this instance of a service
      service-instance-name:
        type: string
        description: This field will store a name assigned to the service-instance.
      service-type:
        type: string
        description: String capturing type of service.
      service-role:
        type: string
        description: String capturing the service role.
      environment-context:
        type: string
        description: This field will store the environment context assigned to the service-instance.
      workload-context:
        type: string
        description: This field will store the workload context assigned to the service-instance.
      created-at:
        type: string
        description: create time of Network Service.
      updated-at:
        type: string
        description: last update of Network Service.
      description:
        type: string
        description: short description for service-instance.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      bandwidth-total:
        type: string
        description: Indicates the total bandwidth to be used for this service.
      vhn-portal-url:
        type: string
        description: URL customers will use to access the vHN Portal.
      service-instance-location-id:
        type: string
        description: An identifier that customers assign to the location where this service is being used.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      selflink:
        type: string
        description: Path to the controller object.
      orchestration-status:
        type: string
        description: Orchestration status of this service.
      input-parameters:
        type: string
        description: String capturing request parameters from SO to pass to Closed Loop.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/definitions/metadatum"
      allotted-resources:
        type: array
        items:
          $ref: "#/definitions/allotted-resource"
  service-instances:
    description: |
      Collection of service instances
    properties:
      service-instance:
        type: array
        items:          
          $ref: "#/definitions/service-instance"
  service-subscription:
    description: |
      Object that group service instances.
      ###### Related Nodes
      - TO customer (PARENT of service-subscription, service-subscription BelongsTo customer, MANY2ONE)(4)
      - TO tenant( service-subscription Uses tenant, MANY2MANY)
      - FROM service-instance (CHILD of service-subscription, service-instance BelongsTo service-subscription, MANY2ONE)(1)

      -(1) IF this SERVICE-SUBSCRIPTION node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SERVICE-SUBSCRIPTION is DELETED also
    required:
    - service-type
    properties:
      service-type:
        type: string
        description: Value defined by orchestration to identify this service across ONAP.
      temp-ub-sub-account-id:
        type: string
        description: This property will be deleted from A&AI in the near future. Only stop gap solution.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      service-instances:
        type: array
        items:
          $ref: "#/definitions/service-instance"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  service-subscriptions:
    description: |
      Collection of objects that group service instances.
    properties:
      service-subscription:
        type: array
        items:          
          $ref: "#/definitions/service-subscription"
  services:
    description: |
      Collection of service model definitions.  Likely to be deprecated in favor of models from ASDC.
    properties:
      service:
        type: array
        items:          
          $ref: "#/definitions/service"
  site-pair:
    description: |
      ###### Related Nodes
      - TO routing-instance (PARENT of site-pair, site-pair BelongsTo routing-instance, MANY2ONE)(4)
      - FROM class-of-service (CHILD of site-pair, class-of-service BelongsTo site-pair, MANY2ONE)(1)

      -(1) IF this SITE-PAIR node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SITE-PAIR is DELETED also
    required:
    - site-pair-id
    properties:
      site-pair-id:
        type: string
        description: unique identifier of probe
      source-ip:
        type: string
        description: Prefix address
      destination-ip:
        type: string
        description: Prefix address
      ip-version:
        type: string
        description: ip version, v4, v6
      destination-hostname:
        type: string
        description: Hostname of the destination equipment to which SLAs are measured against.
      destination-equip-type:
        type: string
        description: The type of destinatination equipment. Could be Router, UCPE, etc.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      classes-of-service:
        type: array
        items:
          $ref: "#/definitions/class-of-service"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  site-pair-set:
    description: |
      Set of instances for probes used to measure service level agreements
      ###### Related Nodes
      - TO generic-vnf( site-pair-set AppliesTo generic-vnf, MANY2MANY)
      - FROM routing-instance (CHILD of site-pair-set, routing-instance BelongsTo site-pair-set, MANY2ONE)(1)

      -(1) IF this SITE-PAIR-SET node is deleted, this FROM node is DELETED also
    required:
    - site-pair-set-id
    properties:
      site-pair-set-id:
        type: string
        description: Unique id of site pair set.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      routing-instances:
        type: array
        items:
          $ref: "#/definitions/routing-instance"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  site-pair-sets:
    description: |
      Collection of sets of instances for probes related to generic-vnf
    properties:
      site-pair-set:
        type: array
        items:          
          $ref: "#/definitions/site-pair-set"
  site-pairs:
    description: |
      probe within a set
    properties:
      site-pair:
        type: array
        items:          
          $ref: "#/definitions/site-pair"
  site-resource:
    description: |
      Instance of a site-resource
      ###### Related Nodes
      - TO allotted-resource( site-resource Uses allotted-resource, MANY2MANY)
      For CCVPN Usecase
      - TO complex( site-resource Uses complex, MANY2MANY)
      For CCVPN Usecase
      - TO ext-aai-network( site-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( site-resource PartOf service-instance, MANY2MANY)
      For CCVPN Usecase

      -(2) IF this SITE-RESOURCE node is deleted, this TO node is DELETED also
    required:
    - site-resource-id
    properties:
      site-resource-id:
        type: string
        description: Uniquely identifies this site-resource by id
      site-resource-name:
        type: string
        description: Store the name of this site-resource.
      description:
        type: string
        description: Store the description of this site-resource.
      type:
        type: string
        description: Store the type of this site-resource.
      role:
        type: string
        description: Store the role of this site-resource.
      generated-site-id:
        type: string
        description: Store the generated-site-id of this site-resource.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  site-resources:
    description: |
      Collection of site-resources
    properties:
      site-resource:
        type: array
        items:          
          $ref: "#/definitions/site-resource"
  snapshot:
    description: |
      Openstack snapshot
      ###### Related Nodes
      - TO cloud-region (PARENT of snapshot, snapshot BelongsTo cloud-region, MANY2ONE)
      - FROM vserver( vserver Uses snapshot, ONE2ONE)
    required:
    - snapshot-id
    properties:
      snapshot-id:
        type: string
        description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
      snapshot-name:
        type: string
        description: Snapshot name
      snapshot-architecture:
        type: string
        description: Operating system architecture
      snapshot-os-distro:
        type: string
        description: The common name of the operating system distribution in lowercase
      snapshot-os-version:
        type: string
        description: The operating system version as specified by the distributor.
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      snapshot-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      prev-snapshot-id:
        type: string
        description: This field contains the UUID of the previous snapshot (if any).
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  snapshots:
    description: |
      Collection of openstack snapshots
    properties:
      snapshot:
        type: array
        items:          
          $ref: "#/definitions/snapshot"
  software-version:
    description: |
      Software Version
      ###### Related Nodes
      - TO pnf (PARENT of software-version, software-version BelongsTo pnf, MANY2ONE)
    required:
    - software-version-id
    - is-active-sw-ver
    properties:
      software-version-id:
        type: string
        description: Identifier of the software version
      is-active-sw-ver:
        type: boolean
        description: used to indicate whether or not this software-version is the active one (activeSw = true)
  software-versions:
    description: |
      Collection of software versions.
    properties:
      software-version:
        type: array
        items:          
          $ref: "#/definitions/software-version"
  sp-partner:
    description: |
      Instance of an sp-partner
      ###### Related Nodes
      - TO service-instance( sp-partner PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
    required:
    - sp-partner-id
    properties:
      sp-partner-id:
        type: string
        description: Uniquely identifies this sp-partner by id
      url:
        type: string
        description: Store the URL of this sp-partner.
      callsource:
        type: string
        description: Store the callsource of this sp-partner.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      operational-status:
        type: string
        description: Store the operational-status for this sp-partner.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this sp-partner.
      model-invariant-id:
        type: string
        description: the ASDC model id for this sp-partner model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this sp-partner model.
        also requires: model-invariant-id
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  sp-partners:
    description: |
      Collection of sp-partners
    properties:
      sp-partner:
        type: array
        items:          
          $ref: "#/definitions/sp-partner"
  sriov-pf:
    description: |
      SR-IOV Physical Function
      ###### Related Nodes
      - TO p-interface (PARENT of sriov-pf, sriov-pf BelongsTo p-interface, ONE2ONE)(4)
      - FROM sriov-vf( sriov-vf Uses sriov-pf, MANY2ONE)

      -(4) IF this TO node is deleted, this SRIOV-PF is DELETED also
    required:
    - pf-pci-id
    properties:
      pf-pci-id:
        type: string
        description: Identifier for the sriov-pf
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  sriov-pfs:
    description: |
      Collection of SR-IOV Physical Functions.
    properties:
      sriov-pf:
        type: array
        items:          
          $ref: "#/definitions/sriov-pf"
  sriov-vf:
    description: |
      SR-IOV Virtual Function (not to be confused with virtual network function)
      ###### Related Nodes
      - TO l-interface (PARENT of sriov-vf, sriov-vf BelongsTo l-interface, ONE2ONE)(4)
      - TO sriov-pf( sriov-vf Uses sriov-pf, MANY2ONE)

      -(4) IF this TO node is deleted, this SRIOV-VF is DELETED also
    required:
    - pci-id
    properties:
      pci-id:
        type: string
        description: PCI ID used to identify the sriov-vf
      vf-vlan-filter:
        type: string
        description: This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM.
      vf-mac-filter:
        type: string
        description: When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM.
      vf-vlan-strip:
        type: boolean
        description: When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM.
      vf-vlan-anti-spoof-check:
        type: boolean
        description: This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs.
      vf-mac-anti-spoof-check:
        type: boolean
        description: This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs.
      vf-mirrors:
        type: string
        description: This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports.
      vf-broadcast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM
      vf-unknown-multicast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM
      vf-unknown-unicast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM
      vf-insert-stag:
        type: boolean
        description: This option, if set to true, instructs to insert outer tag after traffic comes out of VM.
      vf-link-status:
        type: string
        description: This option is used to set the link status.  Valid values as of 1607 are on, off, and auto.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  sriov-vfs:
    description: |
      Collection of SR-IOV Virtual Functions.
    properties:
      sriov-vf:
        type: array
        items:          
          $ref: "#/definitions/sriov-vf"
  start-node-filter:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  subnet:
    description: |
      ###### Related Nodes
      - TO l3-network (PARENT of subnet, subnet BelongsTo l3-network, MANY2ONE)(4)
      - FROM host-route (CHILD of subnet, host-route BelongsTo subnet, MANY2ONE)(1)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf subnet, MANY2MANY)
      - FROM vip-ipv4-address-list( vip-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list MemberOf subnet, MANY2MANY)

      -(1) IF this SUBNET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SUBNET is DELETED also
      -SUBNET cannot be deleted if related to L3-INTERFACE-IPV4-ADDRESS-LIST,L3-INTERFACE-IPV6-ADDRESS-LIST,VIP-IPV4-ADDRESS-LIST,VIP-IPV6-ADDRESS-LIST
    required:
    - subnet-id
    - dhcp-enabled
    properties:
      subnet-id:
        type: string
        description: Subnet ID, should be UUID.
      subnet-name:
        type: string
        description: Name associated with the subnet.
      neutron-subnet-id:
        type: string
        description: Neutron id of this subnet
      gateway-address:
        type: string
        description: gateway ip address
      network-start-address:
        type: string
        description: network start address
      cidr-mask:
        type: string
        description: cidr mask
      ip-version:
        type: string
        description: ip version
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      dhcp-enabled:
        type: boolean
        description: dhcp enabled
      dhcp-start:
        type: string
        description: the start address reserved for use by dhcp
      dhcp-end:
        type: string
        description: the last address reserved for use by dhcp
      subnet-role:
        type: string
        description: role of the subnet, referenced when assigning IPs
      ip-assignment-direction:
        type: string
        description: ip address assignment direction of the subnet
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      subnet-sequence:
        type: integer
        format: int32
        description: sequence of the subnet
      host-routes:
        type: array
        items:
          $ref: "#/definitions/host-route"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  subnets:
    properties:
      subnet:
        type: array
        items:          
          $ref: "#/definitions/subnet"
  tagged-inventory-item-list:
    properties:
      inventory-item:
        type: array
        items:          
          $ref: "#/definitions/inventory-item"
  tenant:
    description: |
      Openstack tenant
      ###### Related Nodes
      - TO cloud-region (PARENT of tenant, tenant BelongsTo cloud-region, MANY2ONE)
      - TO group-assignment( tenant MemberOf group-assignment, MANY2MANY)
      - TO l3-network( tenant Uses l3-network, MANY2MANY)
      - TO volume-group( tenant DependsOn volume-group, ONE2MANY)
      - FROM generic-vnf( generic-vnf BelongsTo tenant, MANY2ONE)
      - FROM nos-server (CHILD of tenant, nos-server BelongsTo tenant, MANY2ONE)
      - FROM sdwan-vpn( sdwan-vpn PartOf tenant, ONE2MANY)
      For CCVPN Usecase
      - FROM service-subscription( service-subscription Uses tenant, MANY2MANY)
      - FROM vserver (CHILD of tenant, vserver BelongsTo tenant, MANY2ONE)

      -TENANT cannot be deleted if related to NOS-SERVER,VSERVER
    required:
    - tenant-id
    - tenant-name
    properties:
      tenant-id:
        type: string
        description: Unique id relative to the cloud-region.
      tenant-name:
        type: string
        description: Readable name of tenant
      tenant-context:
        type: string
        description: This field will store the tenant context.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      vservers:
        type: array
        items:
          $ref: "#/definitions/vserver"
      nos-servers:
        type: array
        items:
          $ref: "#/definitions/nos-server"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  tenants:
    description: |
      Collection of openstack tenants.
    properties:
      tenant:
        type: array
        items:          
          $ref: "#/definitions/tenant"
  tunnel-xconnect:
    description: |
      Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted
      ###### Related Nodes
      - TO allotted-resource (PARENT of tunnel-xconnect, tunnel-xconnect BelongsTo allotted-resource, ONE2ONE)(4)

      -(4) IF this TO node is deleted, this TUNNEL-XCONNECT is DELETED also
    required:
    - id
    properties:
      id:
        type: string
        description: Allotted Resource id UUID assigned to this instance.
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  tunnel-xconnects:
    description: |
      This object is used to store the specific tunnel cross connect aspects of an allotted resource
    properties:
      tunnel-xconnect:
        type: array
        items:          
          $ref: "#/definitions/tunnel-xconnect"
  update:
    description: |
      Serves a PATCH like function.  Does not enforce concurrency control.  Clear each usage with AAI team.
    required:
    - update-node-type
    properties:
      update-node-type:
        type: string
      update-node-key:
        type: array
        items:          
          $ref: "#/definitions/update-node-key"
      update-node-uri:
        type: string
      action:
        type: array
        items:          
          $ref: "#/definitions/action"
  update-node-key:
    properties:
      key-name:
        type: string
      key-value:
        type: string
  vce:
    description: |
      Virtual Customer Edge Router, used specifically for Gamma.  This object is deprecated.
      ###### Related Nodes
      - TO availability-zone( vce Uses availability-zone, MANY2MANY)
      - TO complex( vce LocatedIn complex, MANY2MANY)
      - TO vserver( vce HostedOn vserver, ONE2MANY)
      - FROM entitlement (CHILD of vce, entitlement BelongsTo vce, MANY2ONE)(1)
      - FROM license (CHILD of vce, license BelongsTo vce, MANY2ONE)(1)
      - FROM port-group (CHILD of vce, port-group BelongsTo vce, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf vce, ONE2MANY)

      -(1) IF this VCE node is deleted, this FROM node is DELETED also
    required:
    - vnf-id
    - vnf-name
    - vnf-type
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      service-id:
        type: string
        description: Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED.
      regional-resource-zone:
        type: string
        description: Regional way of organizing pservers, source of truth should define values
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      license-key:
        type: string
        description: OBSOLETE -  do not use
      equipment-role:
        type: string
        description: Network role being played by this VNF
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      vpe-id:
        type: string
        description: Unique ID of VPE connected to this VCE.
      v6-vce-wan-address:
        type: string
        description: Valid v6 IP address for the WAN Link on this router.  Implied length of /64.
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      ipv4-loopback0-address:
        type: string
        description: Loopback0 address
      entitlement-resource-uuid:
        type: string
        description: OBSOLETE -  see child relationships
      port-groups:
        type: array
        items:
          $ref: "#/definitions/port-group"
      licenses:
        type: array
        items:
          $ref: "#/definitions/license"
      entitlements:
        type: array
        items:
          $ref: "#/definitions/entitlement"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  vces:
    description: |
      Collection of Virtual Customer Edge Routers, used specifically for Gamma.  This object is deprecated.
    properties:
      vce:
        type: array
        items:          
          $ref: "#/definitions/vce"
  vf-module:
    description: |
      a deployment unit of VNFCs
      ###### Related Nodes
      - TO generic-vnf (PARENT of vf-module, vf-module BelongsTo generic-vnf, MANY2ONE)(4)
      - TO l3-network( vf-module DependsOn l3-network, MANY2MANY)
      - TO vnfc( vf-module Uses vnfc, ONE2MANY)(2)
      - TO volume-group( vf-module Uses volume-group, ONE2ONE)
      - TO vserver( vf-module Uses vserver, ONE2MANY)

      -(2) IF this VF-MODULE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this VF-MODULE is DELETED also
    required:
    - vf-module-id
    - is-base-vf-module
    - automated-assignment
    properties:
      vf-module-id:
        type: string
        description: Unique ID of vf-module.
      vf-module-name:
        type: string
        description: Name of vf-module
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance.
      orchestration-status:
        type: string
        description: orchestration status of this vf-module, mastered by MSO
      is-base-vf-module:
        type: boolean
        description: used to indicate whether or not this object is base vf module
      automated-assignment:
        type: boolean
        description: Indicates whether vf-module assignment was done via automation or manually
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      contrail-service-instance-fqdn:
        type: string
        description: the Contrail unique ID for a service-instance
      module-index:
        type: integer
        format: int32
        description: the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit
      selflink:
        type: string
        description: Path to the controller object.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  vf-modules:
    description: |
      Collection of vf-modules, a deployment unit of VNFCs
    properties:
      vf-module:
        type: array
        items:          
          $ref: "#/definitions/vf-module"
  vig-server:
    description: |
      vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607
      ###### Related Nodes
      - TO ipsec-configuration (PARENT of vig-server, vig-server BelongsTo ipsec-configuration, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this VIG-SERVER is DELETED also
    required:
    - vig-address-type
    properties:
      vig-address-type:
        type: string
        description: indicates whether the VIG is for AVPN or INTERNET
      ipaddress-v4-vig:
        type: string
        description: v4 IP of the vig server
      ipaddress-v6-vig:
        type: string
        description: v6 IP of the vig server
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  vig-servers:
    properties:
      vig-server:
        type: array
        items:          
          $ref: "#/definitions/vig-server"
  vip-ipv4-address-list:
    description: |
      IPv4 Address Range
      ###### Related Nodes
      - TO cloud-region (PARENT of vip-ipv4-address-list, vip-ipv4-address-list BelongsTo cloud-region, MANY2ONE)
      - TO cp( vip-ipv4-address-list Uses cp, MANY2MANY)
      - TO instance-group( vip-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - TO subnet( vip-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM vnfc( vnfc Uses vip-ipv4-address-list, MANY2MANY)
    required:
    - vip-ipv4-address
    properties:
      vip-ipv4-address:
        type: string
        description: IP address
      vip-ipv4-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 32 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  vip-ipv6-address-list:
    description: |
      IPv6 Address Range
      ###### Related Nodes
      - TO cloud-region (PARENT of vip-ipv6-address-list, vip-ipv6-address-list BelongsTo cloud-region, MANY2ONE)
      - TO cp( vip-ipv6-address-list Uses cp, MANY2MANY)
      - TO instance-group( vip-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - TO subnet( vip-ipv6-address-list MemberOf subnet, MANY2MANY)
      - FROM vnfc( vnfc Uses vip-ipv6-address-list, MANY2MANY)
    required:
    - vip-ipv6-address
    properties:
      vip-ipv6-address:
        type: string
        description: IP address
      vip-ipv6-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 128 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  virtual-data-center:
    description: |
      Virtual organization of cloud infrastructure elements in a data center context
      ###### Related Nodes
      - FROM connector( connector LocatedIn virtual-data-center, MANY2MANY)
      - FROM generic-vnf( generic-vnf LocatedIn virtual-data-center, MANY2MANY)
      - FROM logical-link( logical-link LocatedIn virtual-data-center, MANY2MANY)
    required:
    - vdc-id
    - vdc-name
    properties:
      vdc-id:
        type: string
        description: Unique ID of the vdc
      vdc-name:
        type: string
        description: Name of the virtual data center
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  virtual-data-centers:
    description: |
      Virtual organization of cloud infrastructure elements in a data center context
    properties:
      virtual-data-center:
        type: array
        items:          
          $ref: "#/definitions/virtual-data-center"
  vlan:
    description: |
      Definition of vlan
      ###### Related Nodes
      - TO l-interface (PARENT of vlan, vlan LinksTo l-interface, MANY2ONE)(4)
      - TO logical-link( vlan Uses logical-link, MANY2MANY)(2)
      - TO multicast-configuration( vlan Uses multicast-configuration, MANY2MANY)
      - FROM allotted-resource( allotted-resource PartOf vlan, MANY2MANY)
      - FROM l3-interface-ipv4-address-list (CHILD of vlan, l3-interface-ipv4-address-list BelongsTo vlan, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of vlan, l3-interface-ipv6-address-list BelongsTo vlan, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf vlan, ONE2MANY)

      -(1) IF this VLAN node is deleted, this FROM node is DELETED also
      -(2) IF this VLAN node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this VLAN is DELETED also
    required:
    - vlan-interface
    - in-maint
    - is-ip-unnumbered
    properties:
      vlan-interface:
        type: string
        description: String that identifies the interface
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      vlan-description:
        type: string
        description: Used to describe (the service associated with) the vlan
      backdoor-connection:
        type: string
        description: Whether customer is going to use this VLAN for backdoor connection to another customer premise device.
      vpn-key:
        type: string
        description: This indicates the customers VPN ID associated with this vlan
      orchestration-status:
        type: string
        description: Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      prov-status:
        type: string
        description: Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV].
      is-ip-unnumbered:
        type: boolean
        description: Flag indicating the interface uses the IP Unnumbered configuration.
      is-private:
        type: boolean
        description: Private VLAN indicator.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv6-address-list"
  vlan-mapping:
    description: |
      vlan-mapping object is an optional child object of the forwarder-evc object.  A given forwarder-evc object may have multiple vlan-mapping objects.
      ###### Related Nodes
      - TO forwarder-evc (PARENT of vlan-mapping, vlan-mapping BelongsTo forwarder-evc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this VLAN-MAPPING is DELETED also
    required:
    - vlan-mapping-id
    properties:
      vlan-mapping-id:
        type: string
        description: Key for vlan-mapping object.
      uni-cvlan:
        type: string
        description: CVLAN value from the UNI/ingress side of the SAREA gateway access device.
      nni-svlan:
        type: string
        description: SVLAN value from the NNI/egress side of the SAREA gateway access device.
      nni-cvlan:
        type: string
        description: CVLAN value from the NNI/egress side of the SAREA gateway access device.
      ivlan:
        type: string
        description: The internal VLAN ('IVLAN') value.  Specific to Arista devices.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      resource-version:
        type: string
  vlan-mappings:
    description: |
      Collection of vlan mappings.
    properties:
      vlan-mapping:
        type: array
        items:          
          $ref: "#/definitions/vlan-mapping"
  vlan-tag:
    description: |
      ###### Related Nodes
      - TO cloud-region( vlan-tag BelongsTo cloud-region, MANY2ONE)
      - TO cp( vlan-tag Uses cp, MANY2MANY)
      - TO l3-network( vlan-tag BelongsTo l3-network, MANY2MANY)
    required:
    - vlan-tag-id
    - vlan-tag-role
    - vlan-id-outer
    - is-private
    properties:
      vlan-tag-id:
        type: string
        description: Unique ID of the vlan-tag
      vlan-tag-role:
        type: string
        description: purpose (l3-network to be connected to)
      vlan-id-inner:
        type: integer
        format: int32
        description: VLAN inner id
      vlan-id-outer:
        type: integer
        format: int32
        description: VLAN outer id
      is-private:
        type: boolean
        description: is VLAN private?
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  vlan-tags:
    properties:
      vlan-tag:
        type: array
        items:          
          $ref: "#/definitions/vlan-tag"
  vlans:
    properties:
      vlan:
        type: array
        items:          
          $ref: "#/definitions/vlan"
  vnf:
    description: |
      Abstract vnf class
    required:
    - vnf-id
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
  vnf-image:
    description: |
      Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge.
      ###### Related Nodes
      - FROM generic-vnf( generic-vnf Uses vnf-image, MANY2ONE)

      -VNF-IMAGE cannot be deleted if related to GENERIC-VNF
    required:
    - vnf-image-uuid
    - application
    - application-vendor
    properties:
      vnf-image-uuid:
        type: string
        description: Unique ID of this asset
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  vnf-images:
    description: |
      Collection of image objects that pertain to a VNF that doesn't have associated vservers.  This is a kludge.
    properties:
      vnf-image:
        type: array
        items:          
          $ref: "#/definitions/vnf-image"
  vnfc:
    description: |
      ###### Related Nodes
      - TO cp (PARENT of vnfc, vnfc BelongsTo cp, ONE2MANY)
      cp is child of vnfc(2)
      - TO generic-vnf( vnfc BelongsTo generic-vnf, MANY2ONE)(4)
      - TO instance-group( vnfc MemberOf instance-group, MANY2MANY)
      - TO vip-ipv4-address-list( vnfc Uses vip-ipv4-address-list, MANY2MANY)
      - TO vip-ipv6-address-list( vnfc Uses vip-ipv6-address-list, MANY2MANY)
      - TO vserver( vnfc HostedOn vserver, ONE2MANY)
      - FROM configuration( configuration Uses vnfc, ONE2ONE)(1)
      - FROM l3-interface-ipv4-address-list (CHILD of vnfc, l3-interface-ipv4-address-list BelongsTo vnfc, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of vnfc, l3-interface-ipv6-address-list BelongsTo vnfc, MANY2ONE)(1)
      - FROM vf-module( vf-module Uses vnfc, ONE2MANY)(3)

      -(1) IF this VNFC node is deleted, this FROM node is DELETED also
      -(2) IF this VNFC node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this VNFC is DELETED also
      -(4) IF this TO node is deleted, this VNFC is DELETED also
    required:
    - vnfc-name
    - nfc-naming-code
    - nfc-function
    - in-maint
    - is-closed-loop-disabled
    properties:
      vnfc-name:
        type: string
        description: Unique ID of vnfc.
      nfc-naming-code:
        type: string
        description: Short code that is used in naming instances of the item being modeled
      nfc-function:
        type: string
        description: English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service
      prov-status:
        type: string
        description: prov status of this vnfc
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by APP-C
      ipaddress-v4-oam-vip:
        type: string
        description: Oam V4 vip address of this vnfc
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      is-closed-loop-disabled:
        type: boolean
        description: used to indicate whether closed loop function is enabled on this node
      group-notation:
        type: string
        description: Group notation of VNFC
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      cps:
        type: array
        items:
          $ref: "#/definitions/cp"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/definitions/l3-interface-ipv6-address-list"
  vnfcs:
    description: |
      virtual network components associated with a vserver from application controller.
    properties:
      vnfc:
        type: array
        items:          
          $ref: "#/definitions/vnfc"
  volume:
    description: |
      Ephemeral Block storage volume.
      ###### Related Nodes
      - FROM vserver (PARENT of volume, vserver AttachesTo volume, ONE2MANY)(3)

      -(3) IF this FROM node is deleted, this VOLUME is DELETED also
    required:
    - volume-id
    - volume-selflink
    properties:
      volume-id:
        type: string
        description: Unique ID of block storage volume relative to the vserver.
      volume-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  volume-group:
    description: |
      Persistent block-level storage.
      ###### Related Nodes
      - TO cloud-region (PARENT of volume-group, volume-group BelongsTo cloud-region, MANY2ONE)
      - TO complex( volume-group LocatedIn complex, MANY2ONE)
      - FROM generic-vnf( generic-vnf DependsOn volume-group, ONE2MANY)
      - FROM tenant( tenant DependsOn volume-group, ONE2MANY)
      - FROM vf-module( vf-module Uses volume-group, ONE2ONE)
    required:
    - volume-group-id
    - vnf-type
    properties:
      volume-group-id:
        type: string
        description: Unique ID of volume-group.
      volume-group-name:
        type: string
        description: Name of the volume group.
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this volume-group
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      orchestration-status:
        type: string
        description: Orchestration status of this volume-group
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      vf-module-model-customization-id:
        type: string
        description: helps relate the volume group to the vf-module whose components will require the volume group
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  volume-groups:
    description: |
      Collection of persistent block-level storage.
    properties:
      volume-group:
        type: array
        items:          
          $ref: "#/definitions/volume-group"
  volumes:
    description: |
      Collection of ephemeral Block storage volumes.
    properties:
      volume:
        type: array
        items:          
          $ref: "#/definitions/volume"
  vpls-pe:
    description: |
      VPLS Provider Edge routers.
      ###### Related Nodes
      - TO complex( vpls-pe LocatedIn complex, MANY2ONE)
      - TO ctag-pool( vpls-pe Uses ctag-pool, MANY2MANY)
      - FROM lag-interface (CHILD of vpls-pe, lag-interface BindsTo vpls-pe, MANY2ONE)(1)
      - FROM p-interface (CHILD of vpls-pe, p-interface BindsTo vpls-pe, MANY2ONE)(1)

      -(1) IF this VPLS-PE node is deleted, this FROM node is DELETED also
    required:
    - equipment-name
    properties:
      equipment-name:
        type: string
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address).
      equipment-role:
        type: string
        description: Client should send valid enumerated value, e.g., VPLS-PE.
      vlan-id-outer:
        type: integer
        format: int64
        description: Temporary location for stag to get to VCE
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      p-interfaces:
        type: array
        items:
          $ref: "#/definitions/p-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/definitions/lag-interface"
  vpls-pes:
    description: |
      Collection of VPLS Provider Edge routers
    properties:
      vpls-pe:
        type: array
        items:          
          $ref: "#/definitions/vpls-pe"
  vpn-binding:
    description: |
      VPN binding
      ###### Related Nodes
      - TO customer( vpn-binding Uses customer, MANY2MANY)
      - TO ext-aai-network( vpn-binding BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO p-interface( vpn-binding BindsTo p-interface, ONE2MANY)
      For CCVPN Usecase
      - FROM allotted-resource( allotted-resource BelongsTo vpn-binding, MANY2MANY)
      - FROM configuration( configuration Uses vpn-binding, MANY2ONE)
      - FROM connectivity( connectivity PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM l3-network( l3-network Uses vpn-binding, MANY2MANY)
      - FROM logical-link( logical-link Uses vpn-binding, MANY2MANY)
      - FROM network-resource( network-resource Uses vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM route-target (CHILD of vpn-binding, route-target BelongsTo vpn-binding, MANY2ONE)(1)
      - FROM sdwan-vpn( sdwan-vpn PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM vrf( vrf AppliesTo vpn-binding, MANY2ONE)
      A vrf uses a vpn-binding.

      -(1) IF this VPN-BINDING node is deleted, this FROM node is DELETED also
      -(2) IF this VPN-BINDING node is deleted, this TO node is DELETED also
      -VPN-BINDING cannot be deleted if related to ALLOTTED-RESOURCE,L3-NETWORK,LOGICAL-LINK
    required:
    - vpn-id
    - vpn-name
    properties:
      vpn-id:
        type: string
        description: VPN ID, globally unique within A&AI
      vpn-name:
        type: string
        description: VPN Name
      vpn-platform:
        type: string
        description: the platform associated with the VPN example AVPN, Mobility
      vpn-type:
        type: string
        description: Type of the vpn, should be taken from enumerated/valid values
      vpn-region:
        type: string
        description: region of customer vpn
      customer-vpn-id:
        type: string
        description: id for this customer vpn
      route-distinguisher:
        type: string
        description: Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this vpn.
      access-client-id:
        type: string
        description: Store the id of the access client of this vpn.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this vpn.
      src-access-node-id:
        type: string
        description: Store the id of the src-access-node of this vpn.
      src-access-ltp-id:
        type: string
        description: Store the id of the src-access-ltp of this vpn.
      dst-access-node-id:
        type: string
        description: Store the id of the dst-access-node of this vpn.
      dst-access-ltp-id:
        type: string
        description: Store the id of the dst-access-ltp of this vpn.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      route-targets:
        type: array
        items:
          $ref: "#/definitions/route-target"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
        description: l3-networks relate to vpn-bindings
  vpn-bindings:
    properties:
      vpn-binding:
        type: array
        items:          
          $ref: "#/definitions/vpn-binding"
  vrf:
    description: |
      Definition of vrf
      ###### Related Nodes
      - TO l-interface( vrf Uses l-interface, ONE2MANY)
      - TO l3-network( vrf Uses l3-network, ONE2MANY)
      A vrf uses many l3-networks
      - TO pnf (PARENT of vrf, vrf BelongsTo pnf, MANY2ONE)
      A vrf belongs to a pnf.(4)
      - TO vpn-binding( vrf AppliesTo vpn-binding, MANY2ONE)
      A vrf uses a vpn-binding.
      - FROM configuration( configuration Uses vrf, ONE2MANY)
      A Configuration uses VRFs
      - FROM route-target (CHILD of vrf, route-target BelongsTo vrf, MANY2ONE)(1)

      -(1) IF this VRF node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this VRF is DELETED also
    required:
    - vrf-id
    - vrf-name
    properties:
      vrf-id:
        type: string
        description: VRF UUID.
      vrf-name:
        type: string
        description: VRF Name
      vrf-description:
        type: string
        description: VRF Description
      route-distinguisher:
        type: string
        description: Route Distinguisher
      vrf-type:
        type: string
        description: The type of vrf (bridge-domain as an example)
      vrf-address-family:
        type: string
        description: IP address family (v6/v4/both)
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      route-targets:
        type: array
        items:
          $ref: "#/definitions/route-target"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  vrfs:
    properties:
      vrf:
        type: array
        items:          
          $ref: "#/definitions/vrf"
  vserver:
    description: |
      Virtual Servers, aka virtual machine or VM.
      ###### Related Nodes
      - TO flavor( vserver Uses flavor, MANY2ONE)
      - TO image( vserver Uses image, MANY2ONE)
      - TO pserver( vserver HostedOn pserver, MANY2ONE)
      - TO snapshot( vserver Uses snapshot, ONE2ONE)
      - TO tenant (PARENT of vserver, vserver BelongsTo tenant, MANY2ONE)
      - TO volume (PARENT of vserver, vserver AttachesTo volume, ONE2MANY)(2)
      - FROM generic-vnf( generic-vnf HostedOn vserver, ONE2MANY)
      - FROM l-interface (CHILD of vserver, l-interface BindsTo vserver, MANY2ONE)(1)
      - FROM vce( vce HostedOn vserver, ONE2MANY)
      - FROM vf-module( vf-module Uses vserver, ONE2MANY)
      - FROM vnfc( vnfc HostedOn vserver, ONE2MANY)

      -(1) IF this VSERVER node is deleted, this FROM node is DELETED also
      -(2) IF this VSERVER node is deleted, this TO node is DELETED also
    required:
    - vserver-id
    - vserver-name
    - vserver-selflink
    - in-maint
    - is-closed-loop-disabled
    properties:
      vserver-id:
        type: string
        description: Unique identifier for this vserver relative to its tenant
      vserver-name:
        type: string
        description: Name of vserver
      vserver-name2:
        type: string
        description: Alternative name of vserver
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      vserver-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      is-closed-loop-disabled:
        type: boolean
        description: Used to indicate whether closed loop function is enabled on this node
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      volumes:
        type: array
        items:
          $ref: "#/definitions/volume"
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/definitions/l-interface"
  vservers:
    description: |
      Collection of virtual Servers, aka virtual machines or VMs.
    properties:
      vserver:
        type: array
        items:          
          $ref: "#/definitions/vserver"
  wan-port-config:
    description: |
      Instance of a wan-port-config
      ###### Related Nodes
      - TO ext-aai-network( wan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( wan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this WAN-PORT-CONFIG node is deleted, this TO node is DELETED also
    required:
    - wan-port-config-id
    properties:
      wan-port-config-id:
        type: string
        description: Uniquely identifies this wan-port-config by id
      wan-port-config-name:
        type: string
        description: Store the name of this wan-port-config.
      device-id:
        type: string
        description: Store the id of the device of this wan-port-config.
      vlan-id:
        type: string
        description: Store the id of the vlan of this wan-port-config.
      ip-address:
        type: string
        description: Store the ip-address of this wan-port-config.
      ipv4-address:
        type: string
        description: Store the ipv4-address of this wan-port-config.
      ipv6-address:
        type: string
        description: Store the ipv6-address of this wan-port-config.
      provider-ip-address:
        type: string
        description: Store the provider-ip-address of this wan-port-config.
      provider-ipv4-address:
        type: string
        description: Store the provider-ipv4-address of this wan-port-config.
      provider-ipv6-address:
        type: string
        description: Store the provider-ipv6-address of this wan-port-config.
      input-bandwidth:
        type: string
        description: Store the input-bandwidth of this wan-port-config.
      output-bandwidth:
        type: string
        description: Store the output-bandwidth of this wan-port-config.
      description:
        type: string
        description: Store the description of this wan-port-config.
      port-type:
        type: string
        description: Store the port-type of this wan-port-config.
      port-number:
        type: string
        description: Store the port-number of this wan-port-config.
      transport-network-name:
        type: string
        description: Store the transport-network-name of this wan-port-config.
      device-port-id:
        type: string
        description: Store the device-port-id of this wan-port-config.
      wan-port-id:
        type: string
        description: Store the wan-port-id of this wan-port-config.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  wan-port-configs:
    description: |
      Collection of wan-port-configs
    properties:
      wan-port-config:
        type: array
        items:          
          $ref: "#/definitions/wan-port-config"
  zone:
    description: |
      A zone is a grouping of assets in a location homing to the same connections into the CBB
      ###### Related Nodes
      - TO complex( zone LocatedIn complex, MANY2ONE)
      - FROM cloud-region( cloud-region LocatedIn zone, MANY2ONE)
      - FROM pnf( pnf LocatedIn zone, MANY2ONE)
      - FROM pserver( pserver LocatedIn zone, MANY2ONE)
      - FROM service-instance( service-instance LocatedIn zone, MANY2ONE)
    required:
    - zone-id
    - zone-name
    - design-type
    - zone-context
    - in-maint
    properties:
      zone-id:
        type: string
        description: Code assigned by AIC to the zone
      zone-name:
        type: string
        description: English name associated with the zone
      design-type:
        type: string
        description: Design of zone [Medium/Large…]
      zone-context:
        type: string
        description: Context of zone [production/test]
      status:
        type: string
        description: Status of a zone.
      resource-version:
        type: string
        description: Concurrency value
      in-maint:
        type: boolean
        description: Used to indicate whether or not zone object is in maintenance mode.
      relationship-list:
        type: array
        items:
          $ref: "#/definitions/relationship"
  zones:
    description: |
      Collection of zones
    properties:
      zone:
        type: array
        items:          
          $ref: "#/definitions/zone"
patchDefinitions:
  action:
    properties:
      action-type:
        type: string
      action-data:
        type: array
        items:          
          $ref: "#/patchDefinitions/action-data"
  action-data:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  actions:
    description: |
      APIs that are more action related than REST (e.g., notify, update).
    properties:
      update:
        type: object
        $ref: "#/patchDefinitions/update"
      notify:
        type: object
        $ref: "#/patchDefinitions/notify"
  aggregate-route:
    description: |
      Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&AI. 
      ###### Related Nodes
      - TO l3-network (PARENT of aggregate-route, aggregate-route BelongsTo l3-network, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this AGGREGATE-ROUTE is DELETED also
    required:
    - route-id
    - network-start-address
    - cidr-mask
    - ip-version
    properties:
      route-id:
        type: string
        description: Unique id of the aggregate-route instance
      network-start-address:
        type: string
        description: Name of the forwarding-path
      cidr-mask:
        type: string
        description: CIDR-mask for aggregate route subnet
      ip-version:
        type: string
        description: Identifies is aggregate route is ipv4 or ipv6
  aggregate-routes:
    description: |
      Collection of aggregate routes.
    properties:
      aggregate-route:
        type: array
        items:          
          $ref: "#/patchDefinitions/aggregate-route"
  allotted-resource:
    description: |
      Represents a slice or partial piece of a resource that gets separately allotted
      ###### Related Nodes
      - TO allotted-resource( allotted-resource BindsTo allotted-resource, ONE2ONE)
      AAI-1925
      - TO generic-vnf( allotted-resource PartOf generic-vnf, MANY2MANY)
      - TO instance-group( allotted-resource MemberOf instance-group, MANY2MANY)
      - TO l-interface( allotted-resource Uses l-interface, ONE2MANY)
      - TO l3-network( allotted-resource PartOf l3-network, MANY2MANY)
      - TO network-policy( allotted-resource Uses network-policy, ONE2ONE)
      - TO p-interface( allotted-resource Uses p-interface, ONE2MANY)
      AAI-1925 For CCVPN Usecase
      - TO service-instance (PARENT of allotted-resource, allotted-resource BelongsTo service-instance, MANY2ONE)(4)
      - TO vlan( allotted-resource PartOf vlan, MANY2MANY)
      - TO vpn-binding( allotted-resource BelongsTo vpn-binding, MANY2MANY)
      - FROM allotted-resource( allotted-resource BindsTo allotted-resource, ONE2ONE)
      AAI-1925
      - FROM configuration( configuration Uses allotted-resource, ONE2ONE)(3)
      - FROM service-instance( service-instance Uses allotted-resource, MANY2MANY)
      - FROM site-resource( site-resource Uses allotted-resource, MANY2MANY)
      For CCVPN Usecase
      - FROM tunnel-xconnect (CHILD of allotted-resource, tunnel-xconnect BelongsTo allotted-resource, ONE2ONE)(1)

      -(1) IF this ALLOTTED-RESOURCE node is deleted, this FROM node is DELETED also
      -(3) IF this FROM node is deleted, this ALLOTTED-RESOURCE is DELETED also
      -(4) IF this TO node is deleted, this ALLOTTED-RESOURCE is DELETED also
    required:
    - id
    properties:
      id:
        type: string
        description: Allotted Resource id UUID assigned to this instance.
      description:
        type: string
        description: The descriptive information assigned to this allotted resource instance
      selflink:
        type: string
        description: Link back to more information in the controller
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
  allotted-resources:
    description: |
      This object is used to store slices of services being offered
    properties:
      allotted-resource:
        type: array
        items:          
          $ref: "#/patchDefinitions/allotted-resource"
  availability-zone:
    description: |
      Availability zone, a collection of compute hosts/pservers
      ###### Related Nodes
      - TO cloud-region (PARENT of availability-zone, availability-zone BelongsTo cloud-region, MANY2ONE)(4)
      - TO complex( availability-zone LocatedIn complex, MANY2ONE)
      - TO service-capability( availability-zone AppliesTo service-capability, MANY2MANY)
      - FROM ctag-pool( ctag-pool AppliesTo availability-zone, MANY2MANY)
      - FROM dvs-switch( dvs-switch AppliesTo availability-zone, MANY2MANY)
      - FROM generic-vnf( generic-vnf Uses availability-zone, MANY2MANY)
      - FROM pserver( pserver MemberOf availability-zone, MANY2ONE)
      - FROM vce( vce Uses availability-zone, MANY2MANY)

      -(4) IF this TO node is deleted, this AVAILABILITY-ZONE is DELETED also
      -AVAILABILITY-ZONE cannot be deleted if related to CTAG-POOL,DVS-SWITCH,GENERIC-VNF,PSERVER,VCE
    required:
    - availability-zone-name
    - hypervisor-type
    properties:
      availability-zone-name:
        type: string
        description: Name of the availability zone.  Unique across a cloud region
      hypervisor-type:
        type: string
        description: Type of hypervisor.  Source of truth should define valid values.
      operational-status:
        type: string
        description: State that indicates whether the availability zone should be used, etc.  Source of truth should define valid values.
  availability-zones:
    description: |
      Collection of availability zones
    properties:
      availability-zone:
        type: array
        items:          
          $ref: "#/patchDefinitions/availability-zone"
  az-and-dvs-switches:
    properties:
      dvs-switches:
        type: object
        $ref: "#/patchDefinitions/dvs-switches"
      availability-zone:
        type: object
        $ref: "#/patchDefinitions/availability-zone"
  business:
    description: |
      Namespace for business related constructs
    properties:
      connectors:
        type: array
        items:
          $ref: "#/patchDefinitions/connector"
      customers:
        type: array
        items:
          $ref: "#/patchDefinitions/customer"
      lines-of-business:
        type: array
        items:
          $ref: "#/patchDefinitions/line-of-business"
      owning-entities:
        type: array
        items:
          $ref: "#/patchDefinitions/owning-entity"
      platforms:
        type: array
        items:
          $ref: "#/patchDefinitions/platform"
      projects:
        type: array
        items:
          $ref: "#/patchDefinitions/project"
      sp-partners:
        type: array
        items:
          $ref: "#/patchDefinitions/sp-partner"
  class-of-service:
    description: |
      ###### Related Nodes
      - TO site-pair (PARENT of class-of-service, class-of-service BelongsTo site-pair, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this CLASS-OF-SERVICE is DELETED also
    required:
    - cos
    properties:
      cos:
        type: string
        description: unique identifier of probe
      probe-id:
        type: string
        description: identifier of probe
      probe-type:
        type: string
        description: type of probe
  classes-of-service:
    description: |
      class-of-service of probe
    properties:
      class-of-service:
        type: array
        items:          
          $ref: "#/patchDefinitions/class-of-service"
  cloud-infrastructure:
    description: |
      Namespace for cloud infrastructure.
    properties:
      complexes:
        type: array
        items:
          $ref: "#/patchDefinitions/complex"
      cloud-regions:
        type: array
        items:
          $ref: "#/patchDefinitions/cloud-region"
      network-profiles:
        type: array
        items:
          $ref: "#/patchDefinitions/network-profile"
      pservers:
        type: array
        items:
          $ref: "#/patchDefinitions/pserver"
      virtual-data-centers:
        type: array
        items:
          $ref: "#/patchDefinitions/virtual-data-center"
      operational-environments:
        type: array
        items:
          $ref: "#/patchDefinitions/operational-environment"
      network-technologies:
        type: array
        items:
          $ref: "#/patchDefinitions/network-technology"
  cloud-region:
    description: |
      cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&T's AIC.
      ###### Related Nodes
      - TO complex( cloud-region LocatedIn complex, MANY2ONE)
      - TO instance-group( cloud-region Uses instance-group, ONE2MANY)
      - TO l3-network( cloud-region Uses l3-network, MANY2MANY)
      - TO network-technology( cloud-region Uses network-technology, MANY2MANY)
      - TO zone( cloud-region LocatedIn zone, MANY2ONE)
      - FROM availability-zone (CHILD of cloud-region, availability-zone BelongsTo cloud-region, MANY2ONE)(1)
      - FROM dvs-switch (CHILD of cloud-region, dvs-switch BelongsTo cloud-region, MANY2ONE)
      - FROM esr-system-info (CHILD of cloud-region, esr-system-info BelongsTo cloud-region, MANY2ONE)(1)
      - FROM flavor (CHILD of cloud-region, flavor BelongsTo cloud-region, MANY2ONE)
      - FROM generic-vnf( generic-vnf LocatedIn cloud-region, MANY2ONE)
      - FROM group-assignment (CHILD of cloud-region, group-assignment BelongsTo cloud-region, MANY2ONE)
      - FROM hpa-capability (CHILD of cloud-region, hpa-capability BelongsTo cloud-region, MANY2ONE)
      - FROM image (CHILD of cloud-region, image BelongsTo cloud-region, MANY2ONE)
      - FROM logical-link( logical-link LocatedIn cloud-region, MANY2MANY)
      - FROM oam-network (CHILD of cloud-region, oam-network BelongsTo cloud-region, MANY2ONE)
      - FROM pserver( pserver LocatedIn cloud-region, MANY2ONE)
      - FROM snapshot (CHILD of cloud-region, snapshot BelongsTo cloud-region, MANY2ONE)
      - FROM tenant (CHILD of cloud-region, tenant BelongsTo cloud-region, MANY2ONE)
      - FROM vip-ipv4-address-list (CHILD of cloud-region, vip-ipv4-address-list BelongsTo cloud-region, MANY2ONE)
      - FROM vip-ipv6-address-list (CHILD of cloud-region, vip-ipv6-address-list BelongsTo cloud-region, MANY2ONE)
      - FROM vlan-tag( vlan-tag BelongsTo cloud-region, MANY2ONE)
      - FROM volume-group (CHILD of cloud-region, volume-group BelongsTo cloud-region, MANY2ONE)

      -(1) IF this CLOUD-REGION node is deleted, this FROM node is DELETED also
      -CLOUD-REGION cannot be deleted if related to DVS-SWITCH,FLAVOR,GROUP-ASSIGNMENT,HPA-CAPABILITY,IMAGE,OAM-NETWORK,SNAPSHOT,TENANT,VIP-IPV4-ADDRESS-LIST,VIP-IPV6-ADDRESS-LIST,VOLUME-GROUP
    required:
    - cloud-owner
    - cloud-region-id
    - orchestration-disabled
    - in-maint
    properties:
      cloud-owner:
        type: string
        description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
      cloud-region-id:
        type: string
        description: Identifier used by the vendor for the region. Second part of composite key
      cloud-type:
        type: string
        description: Type of the cloud (e.g., openstack)
      owner-defined-type:
        type: string
        description: Cloud-owner defined type indicator (e.g., dcp, lcp)
      cloud-region-version:
        type: string
        description: Software version employed at the site.  NOTE - THIS FIELD IS NOT KEPT UP TO DATE.
      identity-url:
        type: string
        description: URL of the keystone identity service
      cloud-zone:
        type: string
        description: Zone where the cloud is homed.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED.
      complex-name:
        type: string
        description: complex name for cloud-region instance.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED.
      sriov-automation:
        type: string
        description: Whether the cloud region supports (true) or does not support (false) SR-IOV automation.
      cloud-extra-info:
        type: string
        description: ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM.
      upgrade-cycle:
        type: string
        description: Upgrade cycle for the cloud region. For AIC regions upgrade cycle is designated by A,B,C etc.
      orchestration-disabled:
        type: boolean
        description: Used to indicate whether orchestration is enabled for this cloud-region.
      in-maint:
        type: boolean
        description: Used to indicate whether or not cloud-region object is in maintenance mode.
  cloud-regions:
    properties:
      cloud-region:
        type: array
        items:          
          $ref: "#/patchDefinitions/cloud-region"
  collection:
    description: |
      represents the collection resource in the TOSCA model
      ###### Related Nodes
      - FROM instance-group( instance-group BelongsTo collection, ONE2ONE)
      - FROM service-instance( service-instance ComposedOf collection, ONE2ONE)
    required:
    - collection-id
    properties:
      collection-id:
        type: string
        description: Collection Object UUID
      model-invariant-id:
        type: string
        description: ASDC model id for this resource or service model
        also requires: model-version-id
      model-version-id:
        type: string
        description: Model Version
        also requires: model-invariant-id
      collection-name:
        type: string
        description: collection name
      collection-type:
        type: string
        description: Collection type
      collection-role:
        type: string
        description: Collection Role
      collection-function:
        type: string
        description: Collection function
      orchestration-status:
        type: string
        description: orchestration status
      collection-customization-id:
        type: string
        description: Captures the id of all the configuration used to customize the resource for the service
  collections:
    properties:
      collection:
        type: array
        items:          
          $ref: "#/patchDefinitions/collection"
  common:
    description: |
      Namespace for common inventory resources.
    properties:
      contacts:
        type: array
        items:
          $ref: "#/patchDefinitions/contact"
  complex:
    description: |
      Collection of physical locations that can house cloud-regions.
      ###### Related Nodes
      - TO l3-network( complex Uses l3-network, MANY2MANY)
      - FROM availability-zone( availability-zone LocatedIn complex, MANY2ONE)
      - FROM cloud-region( cloud-region LocatedIn complex, MANY2ONE)
      - FROM ctag-pool (CHILD of complex, ctag-pool BelongsTo complex, MANY2ONE)(1)
      - FROM generic-vnf( generic-vnf LocatedIn complex, MANY2MANY)
      - FROM oam-network( oam-network AppliesTo complex, MANY2MANY)
      - FROM pnf( pnf LocatedIn complex, MANY2ONE)
      - FROM pserver( pserver LocatedIn complex, MANY2ONE)
      - FROM site-resource( site-resource Uses complex, MANY2MANY)
      For CCVPN Usecase
      - FROM vce( vce LocatedIn complex, MANY2MANY)
      - FROM volume-group( volume-group LocatedIn complex, MANY2ONE)
      - FROM vpls-pe( vpls-pe LocatedIn complex, MANY2ONE)
      - FROM zone( zone LocatedIn complex, MANY2ONE)

      -(1) IF this COMPLEX node is deleted, this FROM node is DELETED also
      -COMPLEX cannot be deleted if related to AVAILABILITY-ZONE,CLOUD-REGION,GENERIC-VNF,OAM-NETWORK,PNF,PSERVER,VCE,VOLUME-GROUP,VPLS-PE,ZONE
    required:
    - physical-location-id
    - physical-location-type
    - street1
    - city
    - postal-code
    - country
    - region
    properties:
      physical-location-id:
        type: string
        description: Unique identifier for physical location, e.g., CLLI
      data-center-code:
        type: string
        description: Data center code which can be an alternate way to identify a complex
      complex-name:
        type: string
        description: Gamma complex name for LCP instance.
      identity-url:
        type: string
        description: URL of the keystone identity service
  complexes:
    description: |
      Collection of physical locations that can house cloud-regions.
    properties:
      complex:
        type: array
        items:          
          $ref: "#/patchDefinitions/complex"
  configuration:
    description: |
      Generic configuration object.
      ###### Related Nodes
      - TO allotted-resource( configuration Uses allotted-resource, ONE2ONE)(2)
      - TO configuration( configuration BindsTo configuration, ONE2ONE)
      - TO l-interface( configuration AppliesTo l-interface, ONE2MANY)
      - TO l3-network( configuration PartOf l3-network, MANY2MANY)
      - TO logical-link( configuration Uses logical-link, ONE2MANY)(2)
      - TO pnf( configuration AppliesTo pnf, MANY2MANY)
      - TO vnfc( configuration Uses vnfc, ONE2ONE)(4)
      - TO vpn-binding( configuration Uses vpn-binding, MANY2ONE)
      - TO vrf( configuration Uses vrf, ONE2MANY)
      A Configuration uses VRFs
      - FROM configuration( configuration BindsTo configuration, ONE2ONE)
      - FROM evc (CHILD of configuration, evc BelongsTo configuration, ONE2ONE)(1)
      - FROM forwarder( forwarder Uses configuration, ONE2ONE)(3)
      - FROM forwarder-evc (CHILD of configuration, forwarder-evc BelongsTo configuration, ONE2ONE)(1)
      - FROM forwarding-path( forwarding-path Uses configuration, ONE2ONE)(3)
      - FROM generic-vnf( generic-vnf Uses configuration, ONE2MANY)(3)
      - FROM metadatum (CHILD of configuration, metadatum BelongsTo configuration, MANY2ONE)(1)
      - FROM service-instance( service-instance Uses configuration, ONE2MANY)
      - FROM service-instance( service-instance ComposedOf configuration, MANY2MANY)

      -(1) IF this CONFIGURATION node is deleted, this FROM node is DELETED also
      -(2) IF this CONFIGURATION node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this CONFIGURATION is DELETED also
      -(4) IF this TO node is deleted, this CONFIGURATION is DELETED also
    required:
    - configuration-id
    - configuration-type
    properties:
      configuration-id:
        type: string
        description: UUID assigned to configuration.
      management-option:
        type: string
        description: Indicates the entity that will manage this feature. Could be an organization or the name of the application as well.
      configuration-name:
        type: string
        description: Name of the configuration.
      configuration-type:
        type: string
        description: port-mirroring-configuration.
      configuration-sub-type:
        type: string
        description: vprobe, pprobe.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      orchestration-status:
        type: string
        description: Orchestration status of the configuration.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.
      configuration-selflink:
        type: string
        description: URL to endpoint where AAI can get more details from SDN-GC.
      model-customization-id:
        type: string
        description: id of  the configuration used to customize the resource
      tunnel-bandwidth:
        type: string
        description: DHV Site Effective Bandwidth
      vendor-allowed-max-bandwidth:
        type: string
        description: Velocloud Nominal Throughput - VNT
      config-policy-name:
        type: string
        description: Used to capture the name of the fabric configuration policy that was used to generate the payload sent to PINC for fabric configuration.
  configurations:
    description: |
      Collection of configurations
    properties:
      configuration:
        type: array
        items:          
          $ref: "#/patchDefinitions/configuration"
  connectivities:
    description: |
      Collection of connectivities
    properties:
      connectivity:
        type: array
        items:          
          $ref: "#/patchDefinitions/connectivity"
  connectivity:
    description: |
      Instance of a connectivity
      ###### Related Nodes
      - TO ext-aai-network( connectivity BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( connectivity PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - TO vpn-binding( connectivity PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this CONNECTIVITY node is deleted, this TO node is DELETED also
    required:
    - connectivity-id
    properties:
      connectivity-id:
        type: string
        description: Uniquely identifies this connectivity by id
      bandwidth-profile-name:
        type: string
        description: Store the name of a bandwidth profile.
      vpn-type:
        type: string
        description: Store the type of a bandwidth profile.
      cir:
        type: string
        description: Store the CIR of this connectivity.
      eir:
        type: string
        description: Store the EIR of this connectivity.
      cbs:
        type: string
        description: Store the CBS of this connectivity.
      ebs:
        type: string
        description: Store the EBS of this connectivity.
      color-aware:
        type: string
        description: Store the color-awareness of this connectivity.
      coupling-flag:
        type: string
        description: Store the coupling flag of this connectivity.
      etht-svc-name:
        type: string
        description: The ethernet service name for this connectivity.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this connectivity.
      access-client-id:
        type: string
        description: Store the id of the access client of this connectivity.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this connectivity.
      access-node-id:
        type: string
        description: Store the id of the access node of this connectivity.
      access-ltp-id:
        type: string
        description: Store the id of the access ltp of this connectivity.
      connectivity-selflink:
        type: string
        description: Store the link to get more information for this connectivity.
      cvlan:
        type: string
        description: Store the cvlan for this connectivity.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
  connector:
    description: |
      Collection of resource instances used to connect a variety of disparate inventory widgets
      ###### Related Nodes
      - TO virtual-data-center( connector LocatedIn virtual-data-center, MANY2MANY)
      - FROM metadatum (CHILD of connector, metadatum BelongsTo connector, MANY2ONE)(1)
      - FROM service-instance( service-instance Uses connector, MANY2MANY)

      -(1) IF this CONNECTOR node is deleted, this FROM node is DELETED also
    required:
    - resource-instance-id
    properties:
      resource-instance-id:
        type: string
        description: Unique id of resource instance.
  connectors:
    description: |
      Collection of resource instances used to connect a variety of disparate inventory widgets
    properties:
      connector:
        type: array
        items:          
          $ref: "#/patchDefinitions/connector"
  constrained-element-set:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO model-constraint (PARENT of constrained-element-set, constrained-element-set BelongsTo model-constraint, MANY2ONE)(4)
      - TO model-element (PARENT of constrained-element-set, constrained-element-set BelongsTo model-element, MANY2ONE)(4)
      - FROM element-choice-set (CHILD of constrained-element-set, element-choice-set BelongsTo constrained-element-set, MANY2ONE)(1)

      -(1) IF this CONSTRAINED-ELEMENT-SET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this CONSTRAINED-ELEMENT-SET is DELETED also
    required:
    - constrained-element-set-uuid
    - constraint-type
    - check-type
    properties:
      constrained-element-set-uuid:
        type: string
      constraint-type:
        type: string
      check-type:
        type: string
  constrained-element-sets:
    properties:
      constrained-element-set:
        type: array
        items:          
          $ref: "#/patchDefinitions/constrained-element-set"
  contact:
    description: |
      Contacts store the vendor information and have a relationship to the generic-vnf.  In 1902, this will be populated by SDN-GC
      ###### Related Nodes
      - TO generic-vnf( contact supports generic-vnf, MANY2MANY)
    required:
    - contact-name
    properties:
      contact-name:
        type: string
        description: Name of the contact
      contact-telephone:
        type: string
        description: Tel no. of contact
      contact-email:
        type: string
        description: e-mail of contact
      vendor-type:
        type: string
        description: NI (Network Integrator)SI (System Integrator) 3rd Party LCM
  contacts:
    description: |
      Collection of contacts
    properties:
      contact:
        type: array
        items:          
          $ref: "#/patchDefinitions/contact"
  cp:
    description: |
      point of attachment from services or resources to a virtual link or network.
      ###### Related Nodes
      - FROM l-interface( l-interface LinksTo cp, ONE2ONE)
      - FROM l3-interface-ipv4-address-list (CHILD of cp, l3-interface-ipv4-address-list BelongsTo cp, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of cp, l3-interface-ipv6-address-list BelongsTo cp, MANY2ONE)(1)
      - FROM l3-network( l3-network LinksTo cp, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo cp, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM vip-ipv4-address-list( vip-ipv4-address-list Uses cp, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list Uses cp, MANY2MANY)
      - FROM vlan-tag( vlan-tag Uses cp, MANY2MANY)
      - FROM vnfc (PARENT of cp, vnfc BelongsTo cp, ONE2MANY)
      cp is child of vnfc(3)

      -(1) IF this CP node is deleted, this FROM node is DELETED also
      -(3) IF this FROM node is deleted, this CP is DELETED also
    required:
    - cp-instance-id
    properties:
      cp-instance-id:
        type: string
        description: Unique ID of the connection point.
      port-id:
        type: integer
        format: int32
        description: port index to represent multiple CPs on VNFC connected to same network.
  cps:
    description: |
      Collection of connection points.
    properties:
      cp:
        type: array
        items:          
          $ref: "#/patchDefinitions/cp"
  ctag-assignment:
    description: |
      ###### Related Nodes
      - TO l3-network (PARENT of ctag-assignment, ctag-assignment BelongsTo l3-network, MANY2ONE)(4)
      - FROM service-instance( service-instance Uses ctag-assignment, ONE2MANY)

      -(4) IF this TO node is deleted, this CTAG-ASSIGNMENT is DELETED also
    required:
    - vlan-id-inner
    properties:
      vlan-id-inner:
        type: integer
        format: int64
        description: id.
  ctag-assignments:
    properties:
      ctag-assignment:
        type: array
        items:          
          $ref: "#/patchDefinitions/ctag-assignment"
  ctag-pool:
    description: |
      A collection of C tags (vlan tags) grouped for a specific purpose.
      ###### Related Nodes
      - TO availability-zone( ctag-pool AppliesTo availability-zone, MANY2MANY)
      - TO complex (PARENT of ctag-pool, ctag-pool BelongsTo complex, MANY2ONE)(4)
      - FROM generic-vnf( generic-vnf Uses ctag-pool, MANY2MANY)
      - FROM vpls-pe( vpls-pe Uses ctag-pool, MANY2MANY)

      -(4) IF this TO node is deleted, this CTAG-POOL is DELETED also
    required:
    - target-pe
    - availability-zone-name
    - ctag-pool-purpose
    properties:
      target-pe:
        type: string
        description: The Target provider edge router
      availability-zone-name:
        type: string
        description: Name of the availability zone
      ctag-pool-purpose:
        type: string
        description: Describes what the intended purpose of this pool is.
      ctag-values:
        type: string
        description: Comma separated list of ctags
  ctag-pools:
    properties:
      ctag-pool:
        type: array
        items:          
          $ref: "#/patchDefinitions/ctag-pool"
  customer:
    description: |
      customer identifiers to provide linkage back to BSS information.
      ###### Related Nodes
      - FROM service-subscription (CHILD of customer, service-subscription BelongsTo customer, MANY2ONE)(1)
      - FROM vpn-binding( vpn-binding Uses customer, MANY2MANY)

      -(1) IF this CUSTOMER node is deleted, this FROM node is DELETED also
    required:
    - global-customer-id
    - subscriber-name
    - subscriber-type
    properties:
      global-customer-id:
        type: string
        description: Global customer id used across ONAP to uniquely identify customer.
      subscriber-name:
        type: string
        description: Subscriber name, an alternate way to retrieve a customer.
      subscriber-type:
        type: string
        description: Subscriber type, a way to provide VID with only the INFRA customers.
  customers:
    description: |
      Collection of customer identifiers to provide linkage back to BSS information.
    properties:
      customer:
        type: array
        items:          
          $ref: "#/patchDefinitions/customer"
  cvlan-tag-entry:
    required:
    - cvlan-tag
    properties:
      cvlan-tag:
        type: integer
        format: int64
        description: See mis-na-virtualization-platform.yang
  cvlan-tags:
    properties:
      cvlan-tag-entry:
        type: array
        items:          
          $ref: "#/patchDefinitions/cvlan-tag-entry"
  device:
    description: |
      Instance of a device
      ###### Related Nodes
      - TO ext-aai-network( device BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO generic-vnf( device Uses generic-vnf, ONE2MANY)
      For CCVPN Usecase
      - TO service-instance( device PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this DEVICE node is deleted, this TO node is DELETED also
    required:
    - device-id
    properties:
      device-id:
        type: string
        description: Uniquely identifies this device by id
      esn:
        type: string
        description: Store the esn of this device.
      device-name:
        type: string
        description: Store the name of this device.
      description:
        type: string
        description: Store the description of this device.
      vendor:
        type: string
        description: Store the vendor of this device.
      class:
        type: string
        description: Store the class of this device.
      type:
        type: string
        description: Store the type of this device.
      version:
        type: string
        description: Store the version of this device.
      system-ip:
        type: string
        description: Store the system-ip of this device.
      system-ipv4:
        type: string
        description: Store the system-ipv4 of this device.
      system-ipv6:
        type: string
        description: Store the system-ipv6 of this device.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
  devices:
    description: |
      Collection of devices
    properties:
      device:
        type: array
        items:          
          $ref: "#/patchDefinitions/device"
  dhcp-service:
    description: |
      Instance of a dhcp-service
      ###### Related Nodes
      - FROM lan-port-config (PARENT of dhcp-service, lan-port-config Uses dhcp-service, ONE2MANY)
      For CCVPN Usecase(3)

      -(3) IF this FROM node is deleted, this DHCP-SERVICE is DELETED also
      -DHCP-SERVICE cannot be deleted if related to LAN-PORT-CONFIG
    required:
    - dhcp-service-id
    properties:
      dhcp-service-id:
        type: string
        description: Uniquely identifies this dhcp-service by id
      server-ipv4-address:
        type: string
        description: Store the server-ip4-address of this dhcp-service.
      server-ipv6-address:
        type: string
        description: Store the server-ipv6-address of this dhcp-service.
      service-enable:
        type: string
        description: Store the service-enable of this dhcp-service.
      dhcp-service-type:
        type: string
        description: Store the dhcp-service-type of this dhcp-service.
      lease-time:
        type: string
        description: Store the lease-time of this dhcp-service.
      domain-name:
        type: string
        description: Store the domain-name of this dhcp-service.
      dns:
        type: string
        description: Store the dns of this dhcp-service.
      ntp-primary:
        type: string
        description: Store the ntp-primary of this dhcp-service.
      ntp-secondary:
        type: string
        description: Store the ntp-secondary of this dhcp-service.
      nbns:
        type: string
        description: Store the nbns of this dhcp-service.
  dhcp-services:
    description: |
      Collection of dhcp-services
    properties:
      dhcp-service:
        type: array
        items:          
          $ref: "#/patchDefinitions/dhcp-service"
  dvs-switch:
    description: |
      Digital virtual switch metadata, used by SDN-C to configure VCEs.  A&AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&AI. 
      ###### Related Nodes
      - TO availability-zone( dvs-switch AppliesTo availability-zone, MANY2MANY)
      - TO cloud-region (PARENT of dvs-switch, dvs-switch BelongsTo cloud-region, MANY2ONE)
    required:
    - switch-name
    - vcenter-url
    properties:
      switch-name:
        type: string
        description: DVS switch name
      vcenter-url:
        type: string
        description: URL used to reach the vcenter
  dvs-switches:
    description: |
      Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs.
    properties:
      dvs-switch:
        type: array
        items:          
          $ref: "#/patchDefinitions/dvs-switch"
  edge-prop-names:
    description: |
      Internal map to define the properties of an edge and interpret the map EdgeRules
    properties:
      edgeLabel:
        type: string
      direction:
        type: string
      multiplicityRule:
        type: string
      contains-other-v:
        type: string
      delete-other-v:
        type: string
      SVC-INFRA:
        type: string
      prevent-delete:
        type: string
      aai-uuid:
        type: string
  edge-tag-query-request:
    properties:
      edge-tag:
        type: string
      result-detail:
        type: string
      start-node-type:
        type: string
      start-node-filter:
        type: array
        items:          
          $ref: "#/patchDefinitions/start-node-filter"
      include-node-filter:
        type: array
        items:          
          $ref: "#/patchDefinitions/include-node-filter"
      secondary-filter:
        type: array
        items:          
          $ref: "#/patchDefinitions/secondary-filter"
  edge-tag-query-result:
    properties:
      tagged-inventory-item-list:
        type: array
        items:          
          $ref: "#/patchDefinitions/tagged-inventory-item-list"
  element-choice-set:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO constrained-element-set (PARENT of element-choice-set, element-choice-set BelongsTo constrained-element-set, MANY2ONE)(4)
      - FROM model-element (CHILD of element-choice-set, model-element BelongsTo element-choice-set, MANY2ONE)(1)

      -(1) IF this ELEMENT-CHOICE-SET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this ELEMENT-CHOICE-SET is DELETED also
    required:
    - element-choice-set-uuid
    - element-choice-set-name
    properties:
      element-choice-set-uuid:
        type: string
      element-choice-set-name:
        type: string
      cardinality:
        type: string
  element-choice-sets:
    properties:
      element-choice-set:
        type: array
        items:          
          $ref: "#/patchDefinitions/element-choice-set"
  entitlement:
    description: |
      Metadata for entitlement group.
      ###### Related Nodes
      - TO generic-vnf (PARENT of entitlement, entitlement BelongsTo generic-vnf, MANY2ONE)(4)
      - TO vce (PARENT of entitlement, entitlement BelongsTo vce, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this ENTITLEMENT is DELETED also
    required:
    - group-uuid
    - resource-uuid
    properties:
      group-uuid:
        type: string
        description: Unique ID for the entitlement group the resource comes from, should be uuid.
      resource-uuid:
        type: string
        description: Unique ID of an entitlement resource. 
  entitlements:
    description: |
      Entitlements, keyed by group-uuid and resource-uuid, related to license management
    properties:
      entitlement:
        type: array
        items:          
          $ref: "#/patchDefinitions/entitlement"
  esr-ems:
    description: |
      Persist EMS address information used by EMS driver.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-ems, esr-system-info BelongsTo esr-ems, MANY2ONE)(1)

      -(1) IF this ESR-EMS node is deleted, this FROM node is DELETED also
    required:
    - ems-id
    properties:
      ems-id:
        type: string
        description: Unique ID of EMS.
  esr-ems-list:
    properties:
      esr-ems:
        type: array
        items:          
          $ref: "#/patchDefinitions/esr-ems"
  esr-nfvo:
    description: |
      Persist NFVO address information used by VF-C.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-nfvo, esr-system-info BelongsTo esr-nfvo, ONE2ONE)(1)

      -(1) IF this ESR-NFVO node is deleted, this FROM node is DELETED also
    required:
    - nfvo-id
    properties:
      nfvo-id:
        type: string
        description: Unique ID of nfvo.
      api-root:
        type: string
        description: indecate the api-root.
  esr-nfvo-list:
    properties:
      esr-nfvo:
        type: array
        items:          
          $ref: "#/patchDefinitions/esr-nfvo"
  esr-system-info:
    description: |
      Persist common address information of external systems.
      ###### Related Nodes
      - TO cloud-region (PARENT of esr-system-info, esr-system-info BelongsTo cloud-region, MANY2ONE)(4)
      - TO esr-ems (PARENT of esr-system-info, esr-system-info BelongsTo esr-ems, MANY2ONE)(4)
      - TO esr-nfvo (PARENT of esr-system-info, esr-system-info BelongsTo esr-nfvo, ONE2ONE)(4)
      - TO esr-thirdparty-sdnc (PARENT of esr-system-info, esr-system-info BelongsTo esr-thirdparty-sdnc, ONE2ONE)(4)
      - TO esr-vnfm (PARENT of esr-system-info, esr-system-info BelongsTo esr-vnfm, ONE2ONE)(4)
      - FROM ext-aai-network (PARENT of esr-system-info, ext-aai-network Uses esr-system-info, ONE2MANY)
      For CCVPN Usecase(3)

      -(3) IF this FROM node is deleted, this ESR-SYSTEM-INFO is DELETED also
      -(4) IF this TO node is deleted, this ESR-SYSTEM-INFO is DELETED also
      -ESR-SYSTEM-INFO cannot be deleted if related to EXT-AAI-NETWORK
    required:
    - esr-system-info-id
    - user-name
    - password
    - system-type
    properties:
      esr-system-info-id:
        type: string
        description: Unique ID of esr system info.
      system-name:
        type: string
        description: name of external system.
      type:
        type: string
        description: type of external systems.
      vendor:
        type: string
        description: vendor of external systems.
      version:
        type: string
        description: version of external systems.
      service-url:
        type: string
        description: url used to access external systems.
      user-name:
        type: string
        description: username used to access external systems.
      password:
        type: string
        description: password used to access external systems.
      system-type:
        type: string
        description: it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm.
      protocol:
        type: string
        description: protocol of third party SDNC, for example netconf/snmp.
      ssl-cacert:
        type: string
        description: ca file content if enabled ssl on auth-url.
      ssl-insecure:
        type: boolean
        description: Whether to verify VIM's certificate.
      ip-address:
        type: string
        description: service IP of ftp server.
      port:
        type: string
        description: service port of ftp server.
      cloud-domain:
        type: string
        description: domain info for authentication.
      default-tenant:
        type: string
        description: default tenant of VIM.
      passive:
        type: boolean
        description: ftp passive mode or not.
      remote-path:
        type: string
        description: resource or performance data file path.
      system-status:
        type: string
        description: the status of external system.
      openstack-region-id:
        type: string
        description: OpenStack region ID used by MultiCloud plugin to interact with an OpenStack instance.
  esr-system-info-list:
    description: |
      Collection of persistent block-level external system auth info.
    properties:
      esr-system-info:
        type: array
        items:          
          $ref: "#/patchDefinitions/esr-system-info"
  esr-thirdparty-sdnc:
    description: |
      Persist SDNC address information used by ONAP SDNC.
      ###### Related Nodes
      - TO pnf( esr-thirdparty-sdnc AppliesTo pnf, ONE2MANY)
      - FROM esr-system-info (CHILD of esr-thirdparty-sdnc, esr-system-info BelongsTo esr-thirdparty-sdnc, ONE2ONE)(1)

      -(1) IF this ESR-THIRDPARTY-SDNC node is deleted, this FROM node is DELETED also
    required:
    - thirdparty-sdnc-id
    properties:
      thirdparty-sdnc-id:
        type: string
        description: Unique ID of SDNC.
      location:
        type: string
        description: used for DC type to indicate the location of SDNC, such as Core or Edge.
      product-name:
        type: string
        description: password used to access SDNC server.
  esr-thirdparty-sdnc-list:
    properties:
      esr-thirdparty-sdnc:
        type: array
        items:          
          $ref: "#/patchDefinitions/esr-thirdparty-sdnc"
  esr-vnfm:
    description: |
      Persist VNFM address information used by VF-C.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-vnfm, esr-system-info BelongsTo esr-vnfm, ONE2ONE)(1)
      - FROM generic-vnf( generic-vnf DependsOn esr-vnfm, MANY2ONE)

      -(1) IF this ESR-VNFM node is deleted, this FROM node is DELETED also
    required:
    - vnfm-id
    properties:
      vnfm-id:
        type: string
        description: Unique ID of VNFM.
      vim-id:
        type: string
        description: indecate the VIM to deploy VNF.
      certificate-url:
        type: string
        description: certificate url of VNFM.
  esr-vnfm-list:
    properties:
      esr-vnfm:
        type: array
        items:          
          $ref: "#/patchDefinitions/esr-vnfm"
  evc:
    description: |
      evc object is an optional child object of the Configuration object.
      ###### Related Nodes
      - TO configuration (PARENT of evc, evc BelongsTo configuration, ONE2ONE)(4)

      -(4) IF this TO node is deleted, this EVC is DELETED also
    required:
    - evc-id
    properties:
      evc-id:
        type: string
        description: Unique/key field for the evc object
      forwarding-path-topology:
        type: string
        description: Point-to-Point, Multi-Point
      cir-value:
        type: string
        description: Commited Information Rate
      cir-units:
        type: string
        description: CIR units
      connection-diversity-group-id:
        type: string
        description: Diversity Group ID
      service-hours:
        type: string
        description: formerly Performance Group
      esp-evc-circuit-id:
        type: string
        description: EVC Circuit ID of ESP EVC
      esp-evc-cir-value:
        type: string
        description: Committed Information Rate (For ESP)
      esp-evc-cir-units:
        type: string
        description: CIR units (For ESP)
      esp-itu-code:
        type: string
        description: Identifies ESP
      collector-pop-clli:
        type: string
        description: Collector POP CLLI (from the hostname of the access pnf)
      inter-connect-type-ingress:
        type: string
        description: Interconnect type on ingress side of EVC.
      tagmode-access-ingress:
        type: string
        description: tagode for collector side of EVC
      tagmode-access-egress:
        type: string
        description: tagMode for network side of EVC
      product-entry-id:
        type: string
        description: Product ID
  evcs:
    properties:
      evc:
        type: array
        items:          
          $ref: "#/patchDefinitions/evc"
  ext-aai-network:
    description: |
      Refer to an external AAI in another ONAP.
      ###### Related Nodes
      - TO esr-system-info (PARENT of ext-aai-network, ext-aai-network Uses esr-system-info, ONE2MANY)
      For CCVPN Usecase(2)
      - FROM connectivity( connectivity BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM device( device BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM lan-port-config( lan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM logical-link( logical-link BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM network-resource( network-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM pnf( pnf BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM sdwan-vpn( sdwan-vpn BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM site-resource( site-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM vpn-binding( vpn-binding BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM wan-port-config( wan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)

      -(2) IF this EXT-AAI-NETWORK node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this EXT-AAI-NETWORK is DELETED also
      -EXT-AAI-NETWORK cannot be deleted if related to CONNECTIVITY,DEVICE,LAN-PORT-CONFIG,LOGICAL-LINK,NETWORK-RESOURCE,PNF,SDWAN-VPN,SITE-RESOURCE,VPN-BINDING,WAN-PORT-CONFIG
    required:
    - aai-id
    properties:
      aai-id:
        type: string
        description: Unique ID of the referenced AAI.
      schema-version:
        type: string
        description: Schema version of the referenced AAI.
  ext-aai-networks:
    properties:
      ext-aai-network:
        type: array
        items:          
          $ref: "#/patchDefinitions/ext-aai-network"
  external-system:
    description: |
      Namespace for external system.
    properties:
      esr-ems-list:
        type: array
        items:
          $ref: "#/patchDefinitions/esr-ems"
      esr-vnfm-list:
        type: array
        items:
          $ref: "#/patchDefinitions/esr-vnfm"
      esr-nfvo-list:
        type: array
        items:
          $ref: "#/patchDefinitions/esr-nfvo"
      esr-thirdparty-sdnc-list:
        type: array
        items:
          $ref: "#/patchDefinitions/esr-thirdparty-sdnc"
  extra-properties:
    description: |
      Extra properties for inventory item for response list
    properties:
      extra-property:
        type: array
        items:          
          $ref: "#/patchDefinitions/extra-property"
  extra-property:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  flavor:
    description: |
      Openstack flavor.
      ###### Related Nodes
      - TO cloud-region (PARENT of flavor, flavor BelongsTo cloud-region, MANY2ONE)
      - TO pserver( flavor CanBeInstantiatedIn pserver, MANY2MANY)
      HPA Capacity getting the compute nodes from given flavor
      - FROM hpa-capability (CHILD of flavor, hpa-capability BelongsTo flavor, MANY2ONE)
      - FROM vserver( vserver Uses flavor, MANY2ONE)

      -FLAVOR cannot be deleted if related to HPA-CAPABILITY,VSERVER
    required:
    - flavor-id
    - flavor-name
    - flavor-selflink
    properties:
      flavor-id:
        type: string
        description: Flavor id, expected to be unique across cloud-region.
      flavor-name:
        type: string
        description: Cloud Region Flavor name
      flavor-vcpus:
        type: integer
        format: int32
        description: Number of CPUs
      flavor-ram:
        type: integer
        format: int32
        description: Amount of memory
      flavor-disk:
        type: integer
        format: int32
        description: Disk space
      flavor-ephemeral:
        type: integer
        format: int32
        description: Amount of ephemeral disk space
      flavor-swap:
        type: string
        description: amount of swap space allocation
      flavor-is-public:
        type: boolean
        description: whether flavor is available to all users or private to the tenant it was created in.
      flavor-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      flavor-disabled:
        type: boolean
        description: Boolean as to whether this flavor is no longer enabled
      hpa-capabilities:
        type: array
        items:
          $ref: "#/patchDefinitions/hpa-capability"
        description: List of flavor specific HPA Capabilities
  flavors:
    description: |
      Collection of openstack flavors.
    properties:
      flavor:
        type: array
        items:          
          $ref: "#/patchDefinitions/flavor"
  forwarder:
    description: |
      Entity describing a sequenced segment of forwarding path
      ###### Related Nodes
      - TO configuration( forwarder Uses configuration, ONE2ONE)(2)
      - TO forwarding-path (PARENT of forwarder, forwarder BelongsTo forwarding-path, MANY2ONE)(4)
      - TO generic-vnf( forwarder AppliesTo generic-vnf, MANY2MANY)
      Points to the generic-vnf(s) involved in this forwarding step.
      - TO l-interface( forwarder ForwardsTo l-interface, MANY2MANY)
      - TO lag-interface( forwarder ForwardsTo lag-interface, MANY2MANY)
      - TO p-interface( forwarder ForwardsTo p-interface, MANY2MANY)

      -(2) IF this FORWARDER node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDER is DELETED also
    required:
    - sequence
    properties:
      sequence:
        type: integer
        format: int32
        description: Unique ID of this segmentation
      forwarder-role:
        type: string
        description: ingress, intermediate, egress
  forwarder-evc:
    description: |
      forwarder object is an optional child object of the Configuration object.
      ###### Related Nodes
      - TO configuration (PARENT of forwarder-evc, forwarder-evc BelongsTo configuration, ONE2ONE)(4)
      - FROM vlan-mapping (CHILD of forwarder-evc, vlan-mapping BelongsTo forwarder-evc, MANY2ONE)(1)

      -(1) IF this FORWARDER-EVC node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDER-EVC is DELETED also
    required:
    - forwarder-evc-id
    properties:
      forwarder-evc-id:
        type: string
        description: Key for forwarder-evc object
      circuit-id:
        type: string
        description: Circuit ID from customer/ESP/ingress end of EVC, or reference to beater circuit on gateway/network/egress end of EVC
      ivlan:
        type: string
        description: Internal VLAN.
      svlan:
        type: string
        description: SVLAN value for ingress of egress forwarder.
      cvlan:
        type: string
        description: CVLAN value for ingress of egress forwarder.
      vlan-mappings:
        type: array
        items:
          $ref: "#/patchDefinitions/vlan-mapping"
  forwarder-evcs:
    properties:
      forwarder-evc:
        type: array
        items:          
          $ref: "#/patchDefinitions/forwarder-evc"
  forwarders:
    properties:
      forwarder:
        type: array
        items:          
          $ref: "#/patchDefinitions/forwarder"
  forwarding-path:
    description: |
      Entity that describes the sequenced forwarding path between interfaces of services or resources
      ###### Related Nodes
      - TO configuration( forwarding-path Uses configuration, ONE2ONE)(2)
      - TO service-instance( forwarding-path AppliesTo service-instance, MANY2ONE)(4)
      - FROM forwarder (CHILD of forwarding-path, forwarder BelongsTo forwarding-path, MANY2ONE)(1)

      -(1) IF this FORWARDING-PATH node is deleted, this FROM node is DELETED also
      -(2) IF this FORWARDING-PATH node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDING-PATH is DELETED also
    required:
    - forwarding-path-id
    - forwarding-path-name
    properties:
      forwarding-path-id:
        type: string
        description: Unique ID of this FP
      forwarding-path-name:
        type: string
        description: Name of the FP
  forwarding-paths:
    properties:
      forwarding-path:
        type: array
        items:          
          $ref: "#/patchDefinitions/forwarding-path"
  generic-vnf:
    description: |
      General purpose VNF
      ###### Related Nodes
      - TO availability-zone( generic-vnf Uses availability-zone, MANY2MANY)
      - TO cloud-region( generic-vnf LocatedIn cloud-region, MANY2ONE)
      - TO complex( generic-vnf LocatedIn complex, MANY2MANY)
      - TO configuration( generic-vnf Uses configuration, ONE2MANY)(2)
      - TO ctag-pool( generic-vnf Uses ctag-pool, MANY2MANY)
      - TO esr-vnfm( generic-vnf DependsOn esr-vnfm, MANY2ONE)
      - TO instance-group( generic-vnf MemberOf instance-group, MANY2MANY)
      - TO instance-group( generic-vnf Uses instance-group, ONE2MANY)
      - TO ipsec-configuration( generic-vnf Uses ipsec-configuration, MANY2ONE)
      - TO l3-network( generic-vnf Uses l3-network, MANY2MANY)
      - TO nos-server( generic-vnf HostedOn nos-server, MANY2ONE)
      - TO pnf( generic-vnf HostedOn pnf, MANY2MANY)
      - TO pserver( generic-vnf HostedOn pserver, MANY2MANY)
      - TO tenant( generic-vnf BelongsTo tenant, MANY2ONE)
      - TO virtual-data-center( generic-vnf LocatedIn virtual-data-center, MANY2MANY)
      - TO vnf-image( generic-vnf Uses vnf-image, MANY2ONE)
      - TO volume-group( generic-vnf DependsOn volume-group, ONE2MANY)
      - TO vserver( generic-vnf HostedOn vserver, ONE2MANY)
      - FROM allotted-resource( allotted-resource PartOf generic-vnf, MANY2MANY)
      - FROM contact( contact supports generic-vnf, MANY2MANY)
      - FROM device( device Uses generic-vnf, ONE2MANY)
      For CCVPN Usecase
      - FROM entitlement (CHILD of generic-vnf, entitlement BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM forwarder( forwarder AppliesTo generic-vnf, MANY2MANY)
      Points to the generic-vnf(s) involved in this forwarding step.
      - FROM instance-group( instance-group BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM l-interface (CHILD of generic-vnf, l-interface BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM lag-interface (CHILD of generic-vnf, lag-interface BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM license (CHILD of generic-vnf, license BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM line-of-business( line-of-business Uses generic-vnf, MANY2MANY)
      - FROM logical-link( logical-link BridgedTo generic-vnf, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo generic-vnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM network-profile( network-profile AppliesTo generic-vnf, MANY2MANY)
      - FROM platform( platform Uses generic-vnf, MANY2MANY)
      - FROM service-instance( service-instance ComposedOf generic-vnf, ONE2MANY)
      - FROM site-pair-set( site-pair-set AppliesTo generic-vnf, MANY2MANY)
      - FROM vf-module (CHILD of generic-vnf, vf-module BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM vnfc( vnfc BelongsTo generic-vnf, MANY2ONE)(1)

      -(1) IF this GENERIC-VNF node is deleted, this FROM node is DELETED also
      -(2) IF this GENERIC-VNF node is deleted, this TO node is DELETED also
    required:
    - vnf-id
    - vnf-type
    - in-maint
    - is-closed-loop-disabled
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
      vnf-instance-id:
        type: string
        description: vnf instance id.
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures.
      service-id:
        type: string
        description: Unique identifier of service, does not necessarily map to ASDC service models.  SOON TO BE DEPRECATED
      regional-resource-zone:
        type: string
        description: Regional way of organizing pservers, source of truth should define values
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.  Valid values are in-service-path and out-of-service-path.
      license-key:
        type: string
        description: OBSOLETE -  do not use
      equipment-role:
        type: string
        description: Client should send valid enumerated value
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, used by MSO.
      vnf-package-name:
        type: string
      vnf-discriptor-name:
        type: string
        description: vnf discriptor name
      job-id:
        type: string
        description: job id corresponding to vnf
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      management-option:
        type: string
        description: identifier of managed customer
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf.
      ipv4-loopback0-address:
        type: string
        description: v4 Loopback0 address
      nm-lan-v6-address:
        type: string
        description: v6 Loopback address
      management-v6-address:
        type: string
        description: v6 management address
      vcpu:
        type: integer
        format: int64
        description: number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
      vcpu-units:
        type: string
        description: units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE
      vmemory:
        type: integer
        format: int64
        description: number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
      vmemory-units:
        type: string
        description: units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE
      vdisk:
        type: integer
        format: int64
        description: number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE
      vdisk-units:
        type: string
        description: units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE
      nshd:
        type: integer
        format: int64
        description: number of associated SHD in vnf.
      nvm:
        type: integer
        format: int64
        description: number of vms in vnf.
      nnet:
        type: integer
        format: int64
        description: number of network in vnf.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      is-closed-loop-disabled:
        type: boolean
        description: used to indicate whether closed loop function is enabled on this node
  generic-vnfs:
    description: |
      Collection of VNFs
    properties:
      generic-vnf:
        type: array
        items:          
          $ref: "#/patchDefinitions/generic-vnf"
  group-assignment:
    description: |
      Openstack group-assignment used to store exclusivity groups (EG).
      ###### Related Nodes
      - TO cloud-region (PARENT of group-assignment, group-assignment BelongsTo cloud-region, MANY2ONE)
      - FROM pserver( pserver MemberOf group-assignment, MANY2ONE)
      - FROM tenant( tenant MemberOf group-assignment, MANY2MANY)
    required:
    - group-id
    - group-type
    - group-name
    properties:
      group-id:
        type: string
        description: Group id, expected to be unique across cloud-region.
      group-type:
        type: string
        description: Group type - the type of group this instance refers to
      group-name:
        type: string
        description: Group name - name assigned to the group
      group-description:
        type: string
        description: Group description - description of the group
  group-assignments:
    description: |
      Collection of openstack group assignments
    properties:
      group-assignment:
        type: array
        items:          
          $ref: "#/patchDefinitions/group-assignment"
  host-route:
    description: |
      ###### Related Nodes
      - TO subnet (PARENT of host-route, host-route BelongsTo subnet, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this HOST-ROUTE is DELETED also
    required:
    - host-route-id
    - route-prefix
    - next-hop
    properties:
      host-route-id:
        type: string
        description: host-route id
      route-prefix:
        type: string
        description: subnet prefix
      next-hop:
        type: string
        description: Could be ip-address, hostname, or service-instance
      next-hop-type:
        type: string
        description: Should be ip-address, hostname, or service-instance to match next-hop
  host-routes:
    properties:
      host-route:
        type: array
        items:          
          $ref: "#/patchDefinitions/host-route"
  hpa-capabilities:
    description: |
      Collection of HPA Capabilities
    properties:
      hpa-capability:
        type: array
        items:          
          $ref: "#/patchDefinitions/hpa-capability"
  hpa-capability:
    description: |
      Represents a HPA capability
      ###### Related Nodes
      - TO cloud-region (PARENT of hpa-capability, hpa-capability BelongsTo cloud-region, MANY2ONE)
      - TO flavor (PARENT of hpa-capability, hpa-capability BelongsTo flavor, MANY2ONE)
      - FROM hpa-feature-attributes (CHILD of hpa-capability, hpa-feature-attributes BelongsTo hpa-capability, MANY2ONE)(1)

      -(1) IF this HPA-CAPABILITY node is deleted, this FROM node is DELETED also
    required:
    - hpa-capability-id
    - hpa-feature
    properties:
      hpa-capability-id:
        type: string
        description: UUID to uniquely identify a HPA capability
      hpa-feature:
        type: string
        description: Name of the HPACapability
      hpa-version:
        type: string
        description: HPA schema version
      architecture:
        type: string
        description: Hardware architecture
  hpa-capacity:
    description: |
      HPA Capacity information for compute node
      ###### Related Nodes
      - TO pserver (PARENT of hpa-capacity, hpa-capacity BelongsTo pserver, MANY2ONE)
      HPA Capacity KV for given compute node(4)

      -(4) IF this TO node is deleted, this HPA-CAPACITY is DELETED also
    required:
    - hpa-capacity-key
    properties:
      hpa-capacity-key:
        type: string
        description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
      hpa-capacity-value:
        type: string
        description: JSON string specifying the capacity (total,free), unit and metadata of the specific HPA attribute
  hpa-feature-attributes:
    description: |
      HPA Capability Feature attributes
      ###### Related Nodes
      - TO hpa-capability (PARENT of hpa-feature-attributes, hpa-feature-attributes BelongsTo hpa-capability, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this HPA-FEATURE-ATTRIBUTES is DELETED also
    required:
    - hpa-attribute-key
    properties:
      hpa-attribute-key:
        type: string
        description: name of the specific HPA attribute
      hpa-attribute-value:
        type: string
        description: JSON string specifying the value, unit and type of the specific HPA attribute
  image:
    description: |
      Openstack image.
      ###### Related Nodes
      - TO cloud-region (PARENT of image, image BelongsTo cloud-region, MANY2ONE)
      - FROM metadatum (CHILD of image, metadatum BelongsTo image, MANY2ONE)(1)
      - FROM vserver( vserver Uses image, MANY2ONE)

      -(1) IF this IMAGE node is deleted, this FROM node is DELETED also
      -IMAGE cannot be deleted if related to VSERVER
    required:
    - image-id
    - image-name
    - image-os-distro
    - image-os-version
    - image-selflink
    properties:
      image-id:
        type: string
        description: Image id, expected to be unique across cloud region
      image-name:
        type: string
        description: Image name
      image-architecture:
        type: string
        description: Operating system architecture.
      image-os-distro:
        type: string
        description: The common name of the operating system distribution in lowercase
      image-os-version:
        type: string
        description: The operating system version as specified by the distributor.
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      image-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
  images:
    description: |
      Collectio of Openstack images.
    properties:
      image:
        type: array
        items:          
          $ref: "#/patchDefinitions/image"
  include-node-filter:
    properties:
      include-node-type:
        type: string
  instance-filter:
    description: |
      InstanceFilter for performing a named-query or model query
  instance-filters:
    description: |
      InstanceFilters for performing a named-query or model query
    properties:
      instance-filter:
        type: array
        items:          
          $ref: "#/patchDefinitions/instance-filter"
  instance-group:
    description: |
      General mechanism for grouping instances
      ###### Related Nodes
      - TO collection( instance-group BelongsTo collection, ONE2ONE)
      - TO generic-vnf( instance-group BelongsTo generic-vnf, MANY2ONE)(4)
      - TO model( instance-group Targets model, MANY2MANY)
      - FROM allotted-resource( allotted-resource MemberOf instance-group, MANY2MANY)
      - FROM cloud-region( cloud-region Uses instance-group, ONE2MANY)
      - FROM generic-vnf( generic-vnf MemberOf instance-group, MANY2MANY)
      - FROM generic-vnf( generic-vnf Uses instance-group, ONE2MANY)
      - FROM l-interface( l-interface MemberOf instance-group, MANY2MANY)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - FROM l3-network( l3-network MemberOf instance-group, MANY2MANY)
      - FROM pnf( pnf MemberOf instance-group, MANY2MANY)
      - FROM service-instance( service-instance Uses instance-group, ONE2MANY)
      MSO creates this edge on VNF Group Service creation
      - FROM service-instance( service-instance MemberOf instance-group, MANY2MANY)
      - FROM vip-ipv4-address-list( vip-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - FROM vnfc( vnfc MemberOf instance-group, MANY2MANY)

      -(4) IF this TO node is deleted, this INSTANCE-GROUP is DELETED also
    required:
    - id
    - instance-group-type
    properties:
      id:
        type: string
        description: Instance Group ID, UUID assigned to this instance.
      instance-group-role:
        type: string
        description: role of the instance group.
      model-invariant-id:
        type: string
        description: ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: ASDC model version uid for this resource model.
        also requires: model-invariant-id
      description:
        type: string
        description: Descriptive text to help identify the usage of this instance-group
      instance-group-type:
        type: string
        description: Only valid value today is lower case ha for high availability
  instance-groups:
    description: |
      Collection of openstack route table references
    properties:
      instance-group:
        type: array
        items:          
          $ref: "#/patchDefinitions/instance-group"
  inventory:
    properties:
      cloud-infrastructure:
        type: object
        $ref: "#/patchDefinitions/cloud-infrastructure"
      external-system:
        type: object
        $ref: "#/patchDefinitions/external-system"
      business:
        type: object
        $ref: "#/patchDefinitions/business"
      service-design-and-creation:
        type: object
        $ref: "#/patchDefinitions/service-design-and-creation"
      network:
        type: object
        $ref: "#/patchDefinitions/network"
      common:
        type: object
        $ref: "#/patchDefinitions/common"
  inventory-item:
    properties:
      inventory-item-type:
        type: string
      inventory-item-link:
        type: string
      inventory-item-data:
        type: array
        items:          
          $ref: "#/patchDefinitions/inventory-item-data"
      tagged-inventory-item-list:
        type: array
        items:          
          $ref: "#/patchDefinitions/tagged-inventory-item-list"
  inventory-item-data:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  inventory-response-item:
    description: |
      Inventory item for response list
    properties:
      model-name:
        type: string
      extra-properties:
        type: object
        $ref: "#/patchDefinitions/extra-properties"
      inventory-response-items:
        type: object
        $ref: "#/patchDefinitions/inventory-response-items"
  inventory-response-items:
    description: |
      Container for inventory items in response list
    properties:
      inventory-response-item:
        type: array
        items:          
          $ref: "#/patchDefinitions/inventory-response-item"
  ipsec-configuration:
    description: |
      IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C
      ###### Related Nodes
      - FROM generic-vnf( generic-vnf Uses ipsec-configuration, MANY2ONE)
      - FROM vig-server (CHILD of ipsec-configuration, vig-server BelongsTo ipsec-configuration, MANY2ONE)(1)

      -(1) IF this IPSEC-CONFIGURATION node is deleted, this FROM node is DELETED also
    required:
    - ipsec-configuration-id
    properties:
      ipsec-configuration-id:
        type: string
        description: UUID of this configuration
      requested-vig-address-type:
        type: string
        description: Indicate the type of VIG server like AVPN, INTERNET, BOTH
      requested-encryption-strength:
        type: string
        description: Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc
      requested-dmz-type:
        type: string
        description: Shared DMZ or a DMZ specific to a customer
      shared-dmz-network-address:
        type: string
        description: Network address of shared DMZ
      requested-customer-name:
        type: string
        description: If the DMZ is a custom DMZ, this field will indicate the customer information
      ike-version:
        type: string
        description: can be 1 or 2
      ikev1-authentication:
        type: string
        description: Contains values like md5, sha1, sha256, sha384
      ikev1-encryption:
        type: string
        description: Encyption values like 3des-cbc, des-cbc, aes-128-cbc,Â aes-192-cbc, aes-265-cbc
      ikev1-dh-group:
        type: string
        description: Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14
      ikev1-am-group-id:
        type: string
        description: Group name defined in VIG for clients using aggressive mode
      ikev1-am-password:
        type: string
        description: pre-shared key for the above group name 
      ikev1-sa-lifetime:
        type: string
        description: Lifetime for IKEv1 SA
      ipsec-authentication:
        type: string
        description: md5, sha1, sha256, sha384
      ipsec-encryption:
        type: string
        description: 3des-cbc, des-cbc, aes-128-cbc,Â aes-192-cbc, aes-265-cbc
      ipsec-sa-lifetime:
        type: string
        description: Life time for IPSec SA
      ipsec-pfs:
        type: string
        description: enable PFS or not
      xauth-userid:
        type: string
        description: user ID for xAuth, sm-user,ucpeHostName,nmteHostName
      xauth-user-password:
        type: string
        description: Encrypted using the Juniper $9$ algorithm
      dpd-interval:
        type: string
        description: The time between DPD probe
      dpd-frequency:
        type: string
        description: Maximum number of DPD before claiming the tunnel is down
  ipsec-configurations:
    properties:
      ipsec-configuration:
        type: array
        items:          
          $ref: "#/patchDefinitions/ipsec-configuration"
  key-data:
    properties:
      key-name:
        type: string
      key-value:
        type: string
  l-interface:
    description: |
      Logical interfaces, e.g., a vnic.
      ###### Related Nodes
      - TO cp( l-interface LinksTo cp, ONE2ONE)
      - TO generic-vnf (PARENT of l-interface, l-interface BelongsTo generic-vnf, MANY2ONE)(4)
      - TO instance-group( l-interface MemberOf instance-group, MANY2MANY)
      - TO l-interface( l-interface BelongsTo l-interface, MANY2ONE)(4)
      - TO logical-link( l-interface LinksTo logical-link, MANY2MANY)(2)
      - TO newvce (PARENT of l-interface, l-interface BelongsTo newvce, MANY2ONE)(4)
      - TO p-interface (PARENT of l-interface, l-interface BindsTo p-interface, MANY2ONE)(4)
      - TO vserver (PARENT of l-interface, l-interface BindsTo vserver, MANY2ONE)(4)
      - TO lag-interface (PARENT of l-interface, l-interface BelongsTo lag-interface, MANY2ONE)(4)
      - FROM allotted-resource( allotted-resource Uses l-interface, ONE2MANY)
      - FROM configuration( configuration AppliesTo l-interface, ONE2MANY)
      - FROM forwarder( forwarder ForwardsTo l-interface, MANY2MANY)
      - FROM l-interface (PARENT of l-interface, l-interface BelongsTo l-interface, MANY2ONE)(4)
      - FROM logical-link( logical-link Source l-interface, MANY2MANY)(1)
      - FROM logical-link( logical-link Destination l-interface, MANY2MANY)(1)
      - FROM sriov-vf (CHILD of l-interface, sriov-vf BelongsTo l-interface, ONE2ONE)(1)
      - FROM vlan (CHILD of l-interface, vlan LinksTo l-interface, MANY2ONE)(1)
      - FROM vrf( vrf Uses l-interface, ONE2MANY)
      - FROM l3-interface-ipv4-address-list (CHILD of l-interface, l3-interface-ipv4-address-list BelongsTo l-interface, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of l-interface, l3-interface-ipv6-address-list BelongsTo l-interface, MANY2ONE)(1)
      - FROM lag-interface( lag-interface Uses l-interface, ONE2MANY)

      -(1) IF this L-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this L-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this L-INTERFACE is DELETED also
    required:
    - interface-name
    - is-port-mirrored
    - in-maint
    - is-ip-unnumbered
    properties:
      interface-name:
        type: string
        description: Name given to the interface
      interface-role:
        type: string
        description: E.g., CUSTOMER, UPLINK, etc.
      v6-wan-link-ip:
        type: string
        description: Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      interface-id:
        type: string
        description: ID of interface
      macaddr:
        type: string
        description: MAC address for the interface
      network-name:
        type: string
        description: Name of the network
      management-option:
        type: string
        description: Whether A&AI should be managing this interface of not. Could have value like CUSTOMER
      interface-description:
        type: string
        description: Human friendly text regarding this interface.
      is-port-mirrored:
        type: boolean
        description: boolean indicatating whether or not port is a mirrored.
  l-interfaces:
    description: |
      Collection of logical interfaces.
    properties:
      l-interface:
        type: array
        items:          
          $ref: "#/patchDefinitions/l-interface"
  l3-interface-ipv4-address-list:
    description: |
      IPv4 Address Range
      ###### Related Nodes
      - TO cp (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo cp, MANY2ONE)(4)
      - TO instance-group( l3-interface-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - TO l-interface (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo l-interface, MANY2ONE)(4)
      - TO l3-network( l3-interface-ipv4-address-list MemberOf l3-network, MANY2MANY)
      - TO subnet( l3-interface-ipv4-address-list MemberOf subnet, MANY2MANY)
      - TO vlan (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo vlan, MANY2ONE)(4)
      - TO vnfc (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo vnfc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this L3-INTERFACE-IPV4-ADDRESS-LIST is DELETED also
    required:
    - l3-interface-ipv4-address
    properties:
      l3-interface-ipv4-address:
        type: string
        description: IP address
      l3-interface-ipv4-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 32 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
  l3-interface-ipv6-address-list:
    description: |
      IPv6 Address Range
      ###### Related Nodes
      - TO cp (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo cp, MANY2ONE)(4)
      - TO instance-group( l3-interface-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - TO l-interface (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo l-interface, MANY2ONE)(4)
      - TO l3-network( l3-interface-ipv6-address-list MemberOf l3-network, MANY2MANY)
      - TO subnet( l3-interface-ipv6-address-list MemberOf subnet, MANY2MANY)
      - TO vlan (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo vlan, MANY2ONE)(4)
      - TO vnfc (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo vnfc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this L3-INTERFACE-IPV6-ADDRESS-LIST is DELETED also
    required:
    - l3-interface-ipv6-address
    properties:
      l3-interface-ipv6-address:
        type: string
        description: IP address
      l3-interface-ipv6-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 128 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
  l3-network:
    description: |
      Generic network definition
      ###### Related Nodes
      - TO cp( l3-network LinksTo cp, MANY2MANY)
      - TO instance-group( l3-network MemberOf instance-group, MANY2MANY)
      - TO l3-network( l3-network Uses l3-network, MANY2MANY)
      - TO network-policy( l3-network Uses network-policy, MANY2MANY)
      - TO route-table-reference( l3-network Uses route-table-reference, MANY2MANY)
      - TO vpn-binding( l3-network Uses vpn-binding, MANY2MANY)
      - FROM aggregate-route (CHILD of l3-network, aggregate-route BelongsTo l3-network, MANY2ONE)(1)
      - FROM allotted-resource( allotted-resource PartOf l3-network, MANY2MANY)
      - FROM cloud-region( cloud-region Uses l3-network, MANY2MANY)
      - FROM complex( complex Uses l3-network, MANY2MANY)
      - FROM configuration( configuration PartOf l3-network, MANY2MANY)
      - FROM ctag-assignment (CHILD of l3-network, ctag-assignment BelongsTo l3-network, MANY2ONE)(1)
      - FROM generic-vnf( generic-vnf Uses l3-network, MANY2MANY)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf l3-network, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf l3-network, MANY2MANY)
      - FROM l3-network( l3-network Uses l3-network, MANY2MANY)
      - FROM line-of-business( line-of-business Uses l3-network, MANY2MANY)
      - FROM platform( platform Uses l3-network, MANY2MANY)
      - FROM segmentation-assignment (CHILD of l3-network, segmentation-assignment BelongsTo l3-network, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf l3-network, ONE2MANY)
      - FROM subnet (CHILD of l3-network, subnet BelongsTo l3-network, MANY2ONE)(1)
      - FROM tenant( tenant Uses l3-network, MANY2MANY)
      - FROM vf-module( vf-module DependsOn l3-network, MANY2MANY)
      - FROM vlan-tag( vlan-tag BelongsTo l3-network, MANY2MANY)
      - FROM vrf( vrf Uses l3-network, ONE2MANY)
      A vrf uses many l3-networks

      -(1) IF this L3-NETWORK node is deleted, this FROM node is DELETED also
    required:
    - network-id
    - is-bound-to-vpn
    - is-provider-network
    - is-shared-network
    - is-external-network
    properties:
      network-id:
        type: string
        description: Network ID, should be uuid. Unique across A&AI.
      network-name:
        type: string
        description: Name of the network, governed by some naming convention..
      network-type:
        type: string
        description: Type of the network - who defines these values?
      network-role:
        type: string
        description: Role the network plans - who defines these values?
      network-technology:
        type: string
        description: Network technology - who defines these values?
      neutron-network-id:
        type: string
        description: Neutron network id of this Interface
      is-bound-to-vpn:
        type: boolean
        description: Set to true if bound to VPN
      service-id:
        type: string
        description: Unique identifier of service from ASDC.  Does not strictly map to ASDC services.  SOON TO BE DEPRECATED
      network-role-instance:
        type: integer
        format: int64
        description: network role instance
  l3-networks:
    properties:
      l3-network:
        type: array
        items:          
          $ref: "#/patchDefinitions/l3-network"
  lag-interface:
    description: |
      Link aggregate interface
      ###### Related Nodes
      - TO generic-vnf (PARENT of lag-interface, lag-interface BelongsTo generic-vnf, MANY2ONE)(4)
      - TO l-interface( lag-interface Uses l-interface, ONE2MANY)
      - TO lag-link( lag-interface LinksTo lag-link, MANY2MANY)(2)
      - TO logical-link( lag-interface Uses logical-link, MANY2MANY)(2)
      - TO p-interface( lag-interface Uses p-interface, MANY2MANY)
      - TO pnf (PARENT of lag-interface, lag-interface BindsTo pnf, MANY2ONE)(4)
      - TO pserver (PARENT of lag-interface, lag-interface BindsTo pserver, MANY2ONE)(4)
      - TO vpls-pe (PARENT of lag-interface, lag-interface BindsTo vpls-pe, MANY2ONE)(4)
      - FROM forwarder( forwarder ForwardsTo lag-interface, MANY2MANY)
      - FROM l-interface (CHILD of lag-interface, l-interface BelongsTo lag-interface, MANY2ONE)(1)

      -(1) IF this LAG-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this LAG-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this LAG-INTERFACE is DELETED also
    required:
    - interface-name
    - in-maint
    properties:
      interface-name:
        type: string
        description: Name that identifies the link aggregate interface
      interface-description:
        type: string
        description: Human friendly text regarding this interface.
  lag-interfaces:
    description: |
      Collection of link aggregate interfaces.
    properties:
      lag-interface:
        type: array
        items:          
          $ref: "#/patchDefinitions/lag-interface"
  lag-link:
    description: |
      LAG links can connect lag-interfaces
      ###### Related Nodes
      - FROM lag-interface( lag-interface LinksTo lag-link, MANY2MANY)(3)
      - FROM logical-link( logical-link Uses lag-link, MANY2MANY)

      -(3) IF this FROM node is deleted, this LAG-LINK is DELETED also
    required:
    - link-name
    properties:
      link-name:
        type: string
        description: Alphabetical concatenation of lag-interface names
  lag-links:
    description: |
      Collection of link aggregation connections
    properties:
      lag-link:
        type: array
        items:          
          $ref: "#/patchDefinitions/lag-link"
  lan-port-config:
    description: |
      Instance of a lan-port-config
      ###### Related Nodes
      - TO dhcp-service (PARENT of lan-port-config, lan-port-config Uses dhcp-service, ONE2MANY)
      For CCVPN Usecase(2)
      - TO ext-aai-network( lan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( lan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this LAN-PORT-CONFIG node is deleted, this TO node is DELETED also
    required:
    - lan-port-config-id
    properties:
      lan-port-config-id:
        type: string
        description: Uniquely identifies this lan-port-config by id
      lan-port-config-name:
        type: string
        description: Store the name of this lan-port-config.
      description:
        type: string
        description: Store the description of this lan-port-config.
      device-id:
        type: string
        description: Store the device-id of this lan-port-config.
      port-id:
        type: string
        description: Store the port-id of this lan-port-config.
      ipv4-address:
        type: string
        description: Store the ipv4-address of this lan-port-config.
      ipv6-address:
        type: string
        description: Store the ipv6-address of this lan-port-config.
      vlan-tag:
        type: string
        description: Store the vlan-tag of this lan-port-config.
      input-bandwidth:
        type: string
        description: Store the input-bandwidth of this lan-port-config.
      output-bandwidth:
        type: string
        description: Store the output-bandwidth of this lan-port-config.
  lan-port-configs:
    description: |
      Collection of lan-port-configs
    properties:
      lan-port-config:
        type: array
        items:          
          $ref: "#/patchDefinitions/lan-port-config"
  license:
    description: |
      Metadata for license group.
      ###### Related Nodes
      - TO generic-vnf (PARENT of license, license BelongsTo generic-vnf, MANY2ONE)(4)
      - TO vce (PARENT of license, license BelongsTo vce, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this LICENSE is DELETED also
    required:
    - group-uuid
    - resource-uuid
    properties:
      group-uuid:
        type: string
        description: Unique ID for the license group the resource belongs to, should be uuid.
      resource-uuid:
        type: string
        description: Unique ID of a license resource. 
  licenses:
    description: |
      Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management
    properties:
      license:
        type: array
        items:          
          $ref: "#/patchDefinitions/license"
  line-of-business:
    description: |
      describes a line-of-business
      ###### Related Nodes
      - TO generic-vnf( line-of-business Uses generic-vnf, MANY2MANY)
      - TO l3-network( line-of-business Uses l3-network, MANY2MANY)
    required:
    - line-of-business-name
    properties:
      line-of-business-name:
        type: string
        description: Name of the line-of-business (product)
  lines-of-business:
    description: |
      Collection of lines-of-business
    properties:
      line-of-business:
        type: array
        items:          
          $ref: "#/patchDefinitions/line-of-business"
  logical-link:
    description: |
      Logical links generally connect l-interfaces but are used to express logical connectivity between two points
      ###### Related Nodes
      - TO cloud-region( logical-link LocatedIn cloud-region, MANY2MANY)
      - TO ext-aai-network( logical-link BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO generic-vnf( logical-link BridgedTo generic-vnf, MANY2MANY)
      - TO l-interface( logical-link Source l-interface, MANY2MANY)(4)
      - TO l-interface( logical-link Destination l-interface, MANY2MANY)(4)
      - TO lag-link( logical-link Uses lag-link, MANY2MANY)
      - TO logical-link( logical-link Uses logical-link, MANY2MANY)
      - TO pnf( logical-link BridgedTo pnf, MANY2MANY)
      - TO pserver( logical-link BridgedTo pserver, MANY2MANY)
      - TO virtual-data-center( logical-link LocatedIn virtual-data-center, MANY2MANY)
      - TO vpn-binding( logical-link Uses vpn-binding, MANY2MANY)
      - FROM configuration( configuration Uses logical-link, ONE2MANY)(3)
      - FROM l-interface( l-interface LinksTo logical-link, MANY2MANY)(3)
      - FROM lag-interface( lag-interface Uses logical-link, MANY2MANY)(3)
      - FROM logical-link( logical-link Uses logical-link, MANY2MANY)
      - FROM p-interface( p-interface LinksTo logical-link, MANY2ONE)
      - FROM service-instance( service-instance Uses logical-link, MANY2MANY)(3)
      - FROM vlan( vlan Uses logical-link, MANY2MANY)(3)

      -(2) IF this LOGICAL-LINK node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this LOGICAL-LINK is DELETED also
      -(4) IF this TO node is deleted, this LOGICAL-LINK is DELETED also
    required:
    - link-name
    - in-maint
    - link-type
    properties:
      link-name:
        type: string
        description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      link-type:
        type: string
        description: Type of logical link, e.g., evc
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      ip-version:
        type: string
        description: v4, v6, or ds for dual stack
      routing-protocol:
        type: string
        description: For example, static or BGP
  logical-links:
    description: |
      Collection of logical connections
    properties:
      logical-link:
        type: array
        items:          
          $ref: "#/patchDefinitions/logical-link"
  metadata:
    description: |
      Collection of metadatum (key/value pairs)
    properties:
      metadatum:
        type: array
        items:          
          $ref: "#/patchDefinitions/metadatum"
  metadatum:
    description: |
      Key/value pairs
      ###### Related Nodes
      - TO configuration (PARENT of metadatum, metadatum BelongsTo configuration, MANY2ONE)(4)
      - TO connector (PARENT of metadatum, metadatum BelongsTo connector, MANY2ONE)(4)
      - TO cp( metadatum AppliesTo cp, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO generic-vnf( metadatum AppliesTo generic-vnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO image (PARENT of metadatum, metadatum BelongsTo image, MANY2ONE)(4)
      - TO model-ver (PARENT of metadatum, metadatum BelongsTo model-ver, MANY2ONE)(4)
      - TO pnf( metadatum AppliesTo pnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO service-instance (PARENT of metadatum, metadatum BelongsTo service-instance, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this METADATUM is DELETED also
    required:
    - metaname
    - metaval
    properties:
      metaname:
        type: string
      metaval:
        type: string
  model:
    description: |
      Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version
      ###### Related Nodes
      - FROM instance-group( instance-group Targets model, MANY2MANY)
      - FROM model-ver (CHILD of model, model-ver BelongsTo model, MANY2ONE)(1)
      - FROM named-query( named-query AppliesTo model, ONE2MANY)
      - FROM named-query-element( named-query-element IsA model, MANY2ONE)

      -(1) IF this MODEL node is deleted, this FROM node is DELETED also
      -MODEL cannot be deleted if related to INSTANCE-GROUP,NAMED-QUERY,NAMED-QUERY-ELEMENT
    required:
    - model-invariant-id
    - model-type
    properties:
      model-invariant-id:
        type: string
        description: Unique identifier corresponding to the main definition of a model in ASDC
      model-type:
        type: string
        description: Type of the model, e.g., service, resource, widget, etc.
  model-and-named-query-search:
    description: |
      ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query
    properties:
      query-parameters:
        type: object
        $ref: "#/patchDefinitions/query-parameters"
      instance-filters:
        type: object
        $ref: "#/patchDefinitions/instance-filters"
      secondary-filts:
        type: object
        $ref: "#/patchDefinitions/secondary-filts"
      top-node-type:
        type: string
      secondary-filter-cut-point:
        type: string
  model-constraint:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO model-element (PARENT of model-constraint, model-constraint BelongsTo model-element, MANY2ONE)(4)
      - FROM constrained-element-set (CHILD of model-constraint, constrained-element-set BelongsTo model-constraint, MANY2ONE)(1)

      -(1) IF this MODEL-CONSTRAINT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-CONSTRAINT is DELETED also
    required:
    - model-constraint-uuid
    - constrained-element-set-uuid-to-replace
    properties:
      model-constraint-uuid:
        type: string
      constrained-element-set-uuid-to-replace:
        type: string
      constrained-element-sets:
        type: array
        items:
          $ref: "#/patchDefinitions/constrained-element-set"
  model-constraints:
    properties:
      model-constraint:
        type: array
        items:          
          $ref: "#/patchDefinitions/model-constraint"
  model-element:
    description: |
      Defines how other models combine to make up a higher-level model.
      ###### Related Nodes
      - TO element-choice-set (PARENT of model-element, model-element BelongsTo element-choice-set, MANY2ONE)(4)
      - TO model-element( model-element BelongsTo model-element, MANY2ONE)(4)
      - TO model-ver( model-element IsA model-ver, MANY2ONE)
      - TO model-ver (PARENT of model-element, model-element BelongsTo model-ver, MANY2ONE)(4)
      - FROM constrained-element-set (CHILD of model-element, constrained-element-set BelongsTo model-element, MANY2ONE)(1)
      - FROM model-constraint (CHILD of model-element, model-constraint BelongsTo model-element, MANY2ONE)(1)
      - FROM model-element (PARENT of model-element, model-element BelongsTo model-element, MANY2ONE)(4)

      -(1) IF this MODEL-ELEMENT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-ELEMENT is DELETED also
    required:
    - model-element-uuid
    - new-data-del-flag
    - cardinality
    properties:
      model-element-uuid:
        type: string
      new-data-del-flag:
        type: string
        description: Indicates whether this element was created as part of instantiation from this model
      cardinality:
        type: string
        description: How many of this type of element are required/allowed
      linkage-points:
        type: string
  model-elements:
    properties:
      model-element:
        type: array
        items:          
          $ref: "#/patchDefinitions/model-element"
  model-ver:
    description: |
      Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models
      ###### Related Nodes
      - TO model (PARENT of model-ver, model-ver BelongsTo model, MANY2ONE)(4)
      - FROM metadatum (CHILD of model-ver, metadatum BelongsTo model-ver, MANY2ONE)(1)
      - FROM model-element( model-element IsA model-ver, MANY2ONE)
      - FROM model-element (CHILD of model-ver, model-element BelongsTo model-ver, MANY2ONE)(1)

      -(1) IF this MODEL-VER node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-VER is DELETED also
      -MODEL-VER cannot be deleted if related to MODEL-ELEMENT
    required:
    - model-version-id
    - model-name
    - model-version
    properties:
      model-version-id:
        type: string
        description: Unique identifier corresponding to one version of a model in ASDC
      model-name:
        type: string
        description: Name of the model, which can change from version to version.
      model-version:
        type: string
        description: Version
      distribution-status:
        type: string
        description: Distribution Status
      model-description:
        type: string
        description: Description
  model-vers:
    properties:
      model-ver:
        type: array
        items:          
          $ref: "#/patchDefinitions/model-ver"
  models:
    description: |
      Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models
    properties:
      model:
        type: array
        items:          
          $ref: "#/patchDefinitions/model"
  multicast-configuration:
    description: |
      ###### Related Nodes
      - FROM vlan( vlan Uses multicast-configuration, MANY2MANY)
    required:
    - multicast-configuration-id
    - multicast-protocol
    - rp-type
    properties:
      multicast-configuration-id:
        type: string
        description: Unique id of multicast configuration.
      multicast-protocol:
        type: string
        description: protocol of multicast configuration
      rp-type:
        type: string
        description: rp type of multicast configuration
  multicast-configurations:
    description: |
      multicast configuration of generic-vnf ip-address
    properties:
      multicast-configuration:
        type: array
        items:          
          $ref: "#/patchDefinitions/multicast-configuration"
  named-queries:
    properties:
      named-query:
        type: array
        items:          
          $ref: "#/patchDefinitions/named-query"
  named-query:
    description: |
      TBD
      ###### Related Nodes
      - TO model( named-query AppliesTo model, ONE2MANY)
      - FROM named-query-element (CHILD of named-query, named-query-element BelongsTo named-query, ONE2ONE)(1)

      -(1) IF this NAMED-QUERY node is deleted, this FROM node is DELETED also
    required:
    - named-query-uuid
    - named-query-name
    - named-query-version
    properties:
      named-query-uuid:
        type: string
      named-query-name:
        type: string
      named-query-version:
        type: string
      required-input-param:
        type: string
      description:
        type: string
  named-query-element:
    description: |
      TBD
      ###### Related Nodes
      - TO model( named-query-element IsA model, MANY2ONE)
      - TO named-query-element( named-query-element BelongsTo named-query-element, MANY2ONE)(4)
      - TO named-query (PARENT of named-query-element, named-query-element BelongsTo named-query, ONE2ONE)(4)
      - FROM named-query-element (PARENT of named-query-element, named-query-element BelongsTo named-query-element, MANY2ONE)(4)
      - FROM property-constraint (CHILD of named-query-element, property-constraint BelongsTo named-query-element, MANY2ONE)(1)
      - FROM related-lookup (CHILD of named-query-element, related-lookup BelongsTo named-query-element, MANY2ONE)(1)

      -(1) IF this NAMED-QUERY-ELEMENT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this NAMED-QUERY-ELEMENT is DELETED also
    required:
    - named-query-element-uuid
    properties:
      named-query-element-uuid:
        type: string
      property-collect-list:
        type: string
  named-query-elements:
    properties:
      named-query-element:
        type: array
        items:          
          $ref: "#/patchDefinitions/named-query-element"
  network:
    description: |
      Namespace for network inventory resources.
    properties:
      logical-links:
        type: array
        items:
          $ref: "#/patchDefinitions/logical-link"
      site-pair-sets:
        type: array
        items:
          $ref: "#/patchDefinitions/site-pair-set"
      vpn-bindings:
        type: array
        items:
          $ref: "#/patchDefinitions/vpn-binding"
      vpls-pes:
        type: array
        items:
          $ref: "#/patchDefinitions/vpls-pe"
      multicast-configurations:
        type: array
        items:
          $ref: "#/patchDefinitions/multicast-configuration"
      vces:
        type: array
        items:
          $ref: "#/patchDefinitions/vce"
      vnfcs:
        type: array
        items:
          $ref: "#/patchDefinitions/vnfc"
      l3-networks:
        type: array
        items:
          $ref: "#/patchDefinitions/l3-network"
      network-policies:
        type: array
        items:
          $ref: "#/patchDefinitions/network-policy"
      generic-vnfs:
        type: array
        items:
          $ref: "#/patchDefinitions/generic-vnf"
      lag-links:
        type: array
        items:
          $ref: "#/patchDefinitions/lag-link"
      newvces:
        type: array
        items:
          $ref: "#/patchDefinitions/newvce"
      pnfs:
        type: array
        items:
          $ref: "#/patchDefinitions/pnf"
      physical-links:
        type: array
        items:
          $ref: "#/patchDefinitions/physical-link"
      ipsec-configurations:
        type: array
        items:
          $ref: "#/patchDefinitions/ipsec-configuration"
      route-table-references:
        type: array
        items:
          $ref: "#/patchDefinitions/route-table-reference"
      instance-groups:
        type: array
        items:
          $ref: "#/patchDefinitions/instance-group"
      zones:
        type: array
        items:
          $ref: "#/patchDefinitions/zone"
      configurations:
        type: array
        items:
          $ref: "#/patchDefinitions/configuration"
      forwarding-paths:
        type: array
        items:
          $ref: "#/patchDefinitions/forwarding-path"
      collections:
        type: array
        items:
          $ref: "#/patchDefinitions/collection"
      vlan-tags:
        type: array
        items:
          $ref: "#/patchDefinitions/vlan-tag"
      connectivities:
        type: array
        items:
          $ref: "#/patchDefinitions/connectivity"
      lan-port-configs:
        type: array
        items:
          $ref: "#/patchDefinitions/lan-port-config"
      network-resources:
        type: array
        items:
          $ref: "#/patchDefinitions/network-resource"
      site-resources:
        type: array
        items:
          $ref: "#/patchDefinitions/site-resource"
      sdwan-vpns:
        type: array
        items:
          $ref: "#/patchDefinitions/sdwan-vpn"
      devices:
        type: array
        items:
          $ref: "#/patchDefinitions/device"
      wan-port-configs:
        type: array
        items:
          $ref: "#/patchDefinitions/wan-port-config"
      ext-aai-networks:
        type: array
        items:
          $ref: "#/patchDefinitions/ext-aai-network"
  network-policies:
    properties:
      network-policy:
        type: array
        items:          
          $ref: "#/patchDefinitions/network-policy"
  network-policy:
    description: |
      ###### Related Nodes
      - FROM allotted-resource( allotted-resource Uses network-policy, ONE2ONE)
      - FROM l3-network( l3-network Uses network-policy, MANY2MANY)
    required:
    - network-policy-id
    properties:
      network-policy-id:
        type: string
        description: UUID representing unique key to this instance
      network-policy-fqdn:
        type: string
        description: Contrail FQDN for the policy
      heat-stack-id:
        type: string
        description: ID for the openStack Heat instance
  network-profile:
    description: |
      Network profile populated by SDN-GP for SNMP
      ###### Related Nodes
      - TO generic-vnf( network-profile AppliesTo generic-vnf, MANY2MANY)
    required:
    - nm-profile-name
    properties:
      nm-profile-name:
        type: string
        description: Unique name of network profile.
      community-string:
        type: string
        description: Encrypted SNMP community string
  network-profiles:
    description: |
      Collection of network profiles
    properties:
      network-profile:
        type: array
        items:          
          $ref: "#/patchDefinitions/network-profile"
  network-resource:
    description: |
      Instance of a network-resource
      ###### Related Nodes
      - TO ext-aai-network( network-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO vpn-binding( network-resource Uses vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM pnf( pnf LinksTo network-resource, MANY2MANY)
      For CCVPN Usecase(1)

      -(1) IF this NETWORK-RESOURCE node is deleted, this FROM node is DELETED also
      -(2) IF this NETWORK-RESOURCE node is deleted, this TO node is DELETED also
    required:
    - network-id
    properties:
      network-id:
        type: string
        description: Uniquely identifies this network-resource by id
      provider-id:
        type: string
        description: Store the id of the provider of this network-resource.
      client-id:
        type: string
        description: Store the id of the client of this network-resource.
      te-topo-id:
        type: string
        description: Store the id of the te-topo of this network-resource.
      selflink:
        type: string
        description: Store the link to get more information for this object.
  network-resources:
    description: |
      Collection of network-resources
    properties:
      network-resource:
        type: array
        items:          
          $ref: "#/patchDefinitions/network-resource"
  network-technologies:
    description: |
       The network-technology object is used to capture the supported network technologies of a cloud-region.
    properties:
      network-technology:
        type: array
        items:          
          $ref: "#/patchDefinitions/network-technology"
  network-technology:
    description: |
      The network-technology object is used to capture the supported network technologies of a cloud-region.
      ###### Related Nodes
      - FROM cloud-region( cloud-region Uses network-technology, MANY2MANY)
    required:
    - network-technology-id
    - network-technology-name
    properties:
      network-technology-id:
        type: string
        description: Unique identifier of the network-technology object (UUID)
      network-technology-name:
        type: string
        description: The network-technology  that a cloud-region can support. Current valid values- CONTRAIL AIC_SR_IOV OVS STANDARD-SR-IOV
  newvce:
    description: |
      This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce.
      ###### Related Nodes
      - FROM l-interface (CHILD of newvce, l-interface BelongsTo newvce, MANY2ONE)(1)

      -(1) IF this NEWVCE node is deleted, this FROM node is DELETED also
    required:
    - vnf-id2
    - vnf-name
    - vnf-type
    properties:
      vnf-id2:
        type: string
        description: Unique id of VNF, can't use same attribute name right now until we promote this new object
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      license-key:
        type: string
        description: OBSOLETE -  do not use
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address).
      equipment-role:
        type: string
        description: Client should send valid enumerated value.
  newvces:
    description: |
      This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce.
    properties:
      newvce:
        type: array
        items:          
          $ref: "#/patchDefinitions/newvce"
  nodes:
    properties:
      inventory-item-data:
        type: array
        items:
          $ref: "#/patchDefinitions/inventory-item-data"
  nos-server:
    description: |
      nos-server is the execution environment that will have images, certain versions of VNOS, running on it.
      ###### Related Nodes
      - TO pserver( nos-server HostedOn pserver, ONE2ONE)
      - TO tenant (PARENT of nos-server, nos-server BelongsTo tenant, MANY2ONE)
      - FROM generic-vnf( generic-vnf HostedOn nos-server, MANY2ONE)
    required:
    - nos-server-id
    - nos-server-name
    - vendor
    - nos-server-selflink
    - in-maint
    properties:
      nos-server-id:
        type: string
        description: Unique identifier for this nos relative to its tenant
      nos-server-name:
        type: string
        description: Name of nos
      vendor:
        type: string
        description: uCPE vendor
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      nos-server-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
  nos-servers:
    description: |
      nos-server is the execution environment that will have images, certain versions of VNOS, running on it.
    properties:
      nos-server:
        type: array
        items:          
          $ref: "#/patchDefinitions/nos-server"
  notification-event:
    properties:
      cambria.partition:
        type: string
      notification-event-header:
        type: object
        $ref: "#/patchDefinitions/notification-event-header"
  notification-event-header:
    properties:
      id:
        type: string
      timestamp:
        type: string
      source-name:
        type: string
      domain:
        type: string
      sequence-number:
        type: string
      severity:
        type: string
      event-type:
        type: string
      version:
        type: string
      action:
        type: string
      entity-type:
        type: string
      top-entity-type:
        type: string
      entity-link:
        type: string
      status:
        type: string
  notify:
    required:
    - event-id
    properties:
      event-id:
        type: string
      node-type:
        type: string
      event-trigger:
        type: string
      key-data:
        type: array
        items:          
          $ref: "#/patchDefinitions/key-data"
      selflink:
        type: string
  oam-network:
    description: |
      OAM network, to be deprecated shortly.  Do not use for new purposes. 
      ###### Related Nodes
      - TO cloud-region (PARENT of oam-network, oam-network BelongsTo cloud-region, MANY2ONE)
      - TO complex( oam-network AppliesTo complex, MANY2MANY)
      - TO service-capability( oam-network AppliesTo service-capability, MANY2MANY)
    required:
    - network-uuid
    - network-name
    - cvlan-tag
    properties:
      network-uuid:
        type: string
        description: UUID of the network. Unique across a cloud-region
      network-name:
        type: string
        description: Name of the network.
      cvlan-tag:
        type: integer
        format: int64
        description: cvlan-id
      ipv4-oam-gateway-address:
        type: string
        description: Used for VNF firewall rule so customer cannot send customer traffic over this oam network
      ipv4-oam-gateway-address-prefix-length:
        type: integer
        format: int32
        description: Used for VNF firewall rule so customer cannot send customer traffic over this oam network
  oam-networks:
    description: |
      Collection of OAM networks, to be deprecated shortly.  Do not use for new purposes. 
    properties:
      oam-network:
        type: array
        items:          
          $ref: "#/patchDefinitions/oam-network"
  operational-environment:
    description: |
      It is a logical partition of the cloud which allows to have multiple environments in the production AIC.
      ###### Related Nodes
      - TO operational-environment( operational-environment Uses operational-environment, MANY2MANY)
      - FROM operational-environment( operational-environment Uses operational-environment, MANY2MANY)
    required:
    - operational-environment-id
    - operational-environment-name
    - operational-environment-type
    - operational-environment-status
    - tenant-context
    - workload-context
    properties:
      operational-environment-id:
        type: string
        description: UUID of an operational environment
      operational-environment-name:
        type: string
        description: Operational Environment name
      operational-environment-type:
        type: string
        description: Operational Environment Type.
      operational-environment-status:
        type: string
        description: Status
      tenant-context:
        type: string
        description: Tenant Context.
      workload-context:
        type: string
        description: Workload Context.
  operational-environments:
    description: |
      a logical partition of the cloud which allows to have multiple environments in the production AIC.
    properties:
      operational-environment:
        type: array
        items:          
          $ref: "#/patchDefinitions/operational-environment"
  overloaded-model:
    description: |
      Allows for legacy POST of old-style and new-style models
    required:
    - model-invariant-id
    - model-name-version-id
    - model-type
    - model-name
    - model-id
    - model-version
    properties:
      model-invariant-id:
        type: string
        description: Unique identifier corresponding to the main definition of a model in ASDC
      model-name-version-id:
        type: string
        description: Unique identifier corresponding to one version of a model in ASDC
      model-type:
        type: string
        description: Type of the model, e.g., service, resource, widget, etc.
      model-name:
        type: string
        description: Name of the model, which can change from version to version.
      model-id:
        type: string
        description: Invariant unique ID which does not change from version to version
      model-version:
        type: string
        description: Version
      model-description:
        type: string
        description: Description
  owning-entities:
    description: |
      Collection of owning-entities
    properties:
      owning-entity:
        type: array
        items:          
          $ref: "#/patchDefinitions/owning-entity"
  owning-entity:
    description: |
      describes an owning-entity
      ###### Related Nodes
      - FROM service-instance( service-instance BelongsTo owning-entity, MANY2ONE)
    required:
    - owning-entity-id
    - owning-entity-name
    properties:
      owning-entity-id:
        type: string
        description: UUID of an owning entity
      owning-entity-name:
        type: string
        description: Owning entity name
  p-interface:
    description: |
      Physical interface (e.g., nic)
      ###### Related Nodes
      - TO logical-link( p-interface LinksTo logical-link, MANY2ONE)
      - TO pnf (PARENT of p-interface, p-interface BindsTo pnf, MANY2ONE)(4)
      - TO pserver (PARENT of p-interface, p-interface BindsTo pserver, MANY2ONE)(4)
      - TO vpls-pe (PARENT of p-interface, p-interface BindsTo vpls-pe, MANY2ONE)(4)
      - TO physical-link( p-interface LinksTo physical-link, MANY2ONE)(2)
      - FROM allotted-resource( allotted-resource Uses p-interface, ONE2MANY)
      AAI-1925 For CCVPN Usecase
      - FROM forwarder( forwarder ForwardsTo p-interface, MANY2MANY)
      - FROM l-interface (CHILD of p-interface, l-interface BindsTo p-interface, MANY2ONE)(1)
      - FROM lag-interface( lag-interface Uses p-interface, MANY2MANY)
      - FROM sriov-pf (CHILD of p-interface, sriov-pf BelongsTo p-interface, ONE2ONE)(1)
      - FROM vpn-binding( vpn-binding BindsTo p-interface, ONE2MANY)
      For CCVPN Usecase

      -(1) IF this P-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this P-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this P-INTERFACE is DELETED also
    required:
    - interface-name
    - in-maint
    properties:
      interface-name:
        type: string
        description: Name that identifies the physical interface
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details.
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      port-description:
        type: string
        description: Nature of the services and connectivity on this port.
      equipment-identifier:
        type: string
        description: CLEI or other specification for p-interface hardware.
      interface-role:
        type: string
        description: Role specification for p-interface hardware.
      interface-type:
        type: string
        description: Indicates the physical properties of the interface.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      mac-addresss:
        type: string
        description: MAC Address of the p-interface.
  p-interfaces:
    description: |
      Collection of physical interfaces.
    properties:
      p-interface:
        type: array
        items:          
          $ref: "#/patchDefinitions/p-interface"
  physical-link:
    description: |
      Collection of physical connections, typically between p-interfaces
      ###### Related Nodes
      - FROM p-interface( p-interface LinksTo physical-link, MANY2ONE)(3)

      -(3) IF this FROM node is deleted, this PHYSICAL-LINK is DELETED also
    required:
    - link-name
    properties:
      link-name:
        type: string
        description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      circuit-id:
        type: string
        description: Circuit it
      dual-mode:
        type: string
        description: Dual access mode (e.g., primary, secondary
      management-option:
        type: string
        description: To provide information on who manages this circuit. A&AI or 3rd party transport provider
      service-provider-name:
        type: string
        description: Name of the service Provider on this link.
      service-provider-bandwidth-up-value:
        type: integer
        format: int32
        description: Upstream Bandwidth value agreed with the service provider
      service-provider-bandwidth-up-units:
        type: string
        description: Units for the upstream BW value
      service-provider-bandwidth-down-value:
        type: integer
        format: int32
        description: Downstream Bandwidth value agreed with the service provider
      service-provider-bandwidth-down-units:
        type: string
        description: Units for downstream BW value
  physical-links:
    description: |
      Collection of physical connections, typically between p-interfaces
    properties:
      physical-link:
        type: array
        items:          
          $ref: "#/patchDefinitions/physical-link"
  platform:
    description: |
      describes a platform
      ###### Related Nodes
      - TO generic-vnf( platform Uses generic-vnf, MANY2MANY)
      - TO l3-network( platform Uses l3-network, MANY2MANY)
    required:
    - platform-name
    properties:
      platform-name:
        type: string
        description: Name of the platform
  platforms:
    description: |
      Collection of platforms
    properties:
      platform:
        type: array
        items:          
          $ref: "#/patchDefinitions/platform"
  pnf:
    description: |
      PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE.
      ###### Related Nodes
      - TO complex( pnf LocatedIn complex, MANY2ONE)
      - TO ext-aai-network( pnf BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO instance-group( pnf MemberOf instance-group, MANY2MANY)
      - TO network-resource( pnf LinksTo network-resource, MANY2MANY)
      For CCVPN Usecase(4)
      - TO zone( pnf LocatedIn zone, MANY2ONE)
      - FROM configuration( configuration AppliesTo pnf, MANY2MANY)
      - FROM esr-thirdparty-sdnc( esr-thirdparty-sdnc AppliesTo pnf, ONE2MANY)
      - FROM generic-vnf( generic-vnf HostedOn pnf, MANY2MANY)
      - FROM lag-interface (CHILD of pnf, lag-interface BindsTo pnf, MANY2ONE)(1)
      - FROM logical-link( logical-link BridgedTo pnf, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo pnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM p-interface (CHILD of pnf, p-interface BindsTo pnf, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf pnf, ONE2MANY)
      - FROM software-version (CHILD of pnf, software-version BelongsTo pnf, MANY2ONE)
      - FROM vrf (CHILD of pnf, vrf BelongsTo pnf, MANY2ONE)
      A vrf belongs to a pnf.(1)

      -(1) IF this PNF node is deleted, this FROM node is DELETED also
      -(2) IF this PNF node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this PNF is DELETED also
      -PNF cannot be deleted if related to NETWORK-RESOURCE,SOFTWARE-VERSION
    required:
    - pnf-name
    - in-maint
    properties:
      pnf-name:
        type: string
        description: unique name of Physical Network Function.
      pnf-name2:
        type: string
        description: name of Physical Network Function.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details.
      pnf-name2-source:
        type: string
        description: source of name2
      pnf-id:
        type: string
        description: id of pnf
      equip-type:
        type: string
        description: Equipment type.  Source of truth should define valid values.
      equip-vendor:
        type: string
        description: Equipment vendor.  Source of truth should define valid values.
      equip-model:
        type: string
        description: Equipment model.  Source of truth should define valid values.
      management-option:
        type: string
        description: identifier of managed customer
      orchestration-status:
        type: string
        description: Orchestration status of this pnf
      ipaddress-v4-oam:
        type: string
        description: ipv4-oam-address with new naming convention for IP addresses
      sw-version:
        type: string
        description: sw-version is the version of SW for the hosted application on the PNF.
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      frame-id:
        type: string
        description: ID of the physical frame (relay rack) where pnf is installed.
      serial-number:
        type: string
        description: Serial number of the device
      ipaddress-v4-loopback-0:
        type: string
        description: IPV4 Loopback 0 address
      ipaddress-v6-loopback-0:
        type: string
        description: IPV6 Loopback 0 address
      ipaddress-v4-aim:
        type: string
        description: IPV4 AIM address
      ipaddress-v6-aim:
        type: string
        description: IPV6 AIM address
      ipaddress-v6-oam:
        type: string
        description: IPV6 OAM address
      inv-status:
        type: string
        description: CANOPI's inventory status.  Only set with values exactly as defined by CANOPI.
  pnfs:
    description: |
      Collection of Physical Network Functions.
    properties:
      pnf:
        type: array
        items:          
          $ref: "#/patchDefinitions/pnf"
  port-group:
    description: |
      Used to capture the network interfaces of this VCE
      ###### Related Nodes
      - TO vce (PARENT of port-group, port-group BelongsTo vce, MANY2ONE)(4)
      - FROM cvlan-tag (CHILD of port-group, cvlan-tag BelongsTo port-group, MANY2ONE)(1)

      -(1) IF this PORT-GROUP node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this PORT-GROUP is DELETED also
    required:
    - interface-id
    - orchestration-status
    properties:
      interface-id:
        type: string
        description: Unique ID of the interface
      neutron-network-id:
        type: string
        description: Neutron network id of this Interface
      neutron-network-name:
        type: string
        description: Neutron network name of this Interface
      interface-role:
        type: string
        description: Role assigned to this Interface, should use values as defined in ECOMP Yang models.
  port-groups:
    properties:
      port-group:
        type: array
        items:          
          $ref: "#/patchDefinitions/port-group"
  project:
    description: |
      describes the project
      ###### Related Nodes
      - TO service-instance( project Uses service-instance, ONE2MANY)
    required:
    - project-name
    properties:
      project-name:
        type: string
        description: Name of the project deploying a service
  projects:
    description: |
      Collection of projects
    properties:
      project:
        type: array
        items:          
          $ref: "#/patchDefinitions/project"
  properties:
    description: |
      Property holder for query properties or instance properties
    properties:
      property-name:
        type: string
      property-value:
        type: string
  property-constraint:
    description: |
      TBD
      ###### Related Nodes
      - TO named-query-element (PARENT of property-constraint, property-constraint BelongsTo named-query-element, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this PROPERTY-CONSTRAINT is DELETED also
    required:
    - property-constraint-uuid
    - constraint-type
    - property-name
    - property-value
    properties:
      property-constraint-uuid:
        type: string
      constraint-type:
        type: string
      property-name:
        type: string
      property-value:
        type: string
  property-constraints:
    properties:
      property-constraint:
        type: array
        items:          
          $ref: "#/patchDefinitions/property-constraint"
  pserver:
    description: |
      Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver.
      ###### Related Nodes
      - TO availability-zone( pserver MemberOf availability-zone, MANY2ONE)
      - TO cloud-region( pserver LocatedIn cloud-region, MANY2ONE)
      - TO complex( pserver LocatedIn complex, MANY2ONE)
      - TO group-assignment( pserver MemberOf group-assignment, MANY2ONE)
      - TO zone( pserver LocatedIn zone, MANY2ONE)
      - FROM flavor( flavor CanBeInstantiatedIn pserver, MANY2MANY)
      HPA Capacity getting the compute nodes from given flavor
      - FROM generic-vnf( generic-vnf HostedOn pserver, MANY2MANY)
      - FROM hpa-capacity (CHILD of pserver, hpa-capacity BelongsTo pserver, MANY2ONE)
      HPA Capacity KV for given compute node(1)
      - FROM lag-interface (CHILD of pserver, lag-interface BindsTo pserver, MANY2ONE)(1)
      - FROM logical-link( logical-link BridgedTo pserver, MANY2MANY)
      - FROM nos-server( nos-server HostedOn pserver, ONE2ONE)
      - FROM p-interface (CHILD of pserver, p-interface BindsTo pserver, MANY2ONE)(1)
      - FROM vserver( vserver HostedOn pserver, MANY2ONE)

      -(1) IF this PSERVER node is deleted, this FROM node is DELETED also
      -PSERVER cannot be deleted if related to GROUP-ASSIGNMENT,GENERIC-VNF,LOGICAL-LINK,NOS-SERVER,VSERVER
    required:
    - hostname
    - in-maint
    properties:
      hostname:
        type: string
        description: Value from executing hostname on the compute node.
      ptnii-equip-name:
        type: string
        description: PTNII name
      number-of-cpus:
        type: integer
        format: int32
        description: Number of cpus
      disk-in-gigabytes:
        type: integer
        format: int32
        description: Disk size, in GBs
      ram-in-megabytes:
        type: integer
        format: int32
        description: RAM size, in MBs
      equip-type:
        type: string
        description: Equipment type.  Source of truth should define valid values.
      equip-vendor:
        type: string
        description: Equipment vendor.  Source of truth should define valid values.
      equip-model:
        type: string
        description: Equipment model.  Source of truth should define valid values.
      fqdn:
        type: string
        description: Fully-qualified domain name
      pserver-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      ipv4-oam-address:
        type: string
        description: Used to configure device, also used for troubleshooting and is IP used for traps generated by device.
      serial-number:
        type: string
        description: Serial number, may be queried
      ipaddress-v4-loopback-0:
        type: string
        description: IPV4 Loopback 0 address
      ipaddress-v6-loopback-0:
        type: string
        description: IPV6 Loopback 0 address
      ipaddress-v4-aim:
        type: string
        description: IPV4 AIM address
      ipaddress-v6-aim:
        type: string
        description: IPV6 AIM address
      ipaddress-v6-oam:
        type: string
        description: IPV6 OAM address
      inv-status:
        type: string
        description: CANOPI's inventory status.  Only set with values exactly as defined by CANOPI.
      pserver-id:
        type: string
        description: ID of Pserver
      internet-topology:
        type: string
        description: internet topology of Pserver
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
  pservers:
    description: |
      Collection of compute hosts.
    properties:
      pserver:
        type: array
        items:          
          $ref: "#/patchDefinitions/pserver"
  query-parameters:
    description: |
      QueryParameters for performing a named-query or model query
    properties:
      named-query:
        type: object
        $ref: "#/patchDefinitions/named-query"
      overloaded-model:
        type: object
        $ref: "#/patchDefinitions/overloaded-model"
  related-lookup:
    description: |
      TBD
      ###### Related Nodes
      - TO named-query-element (PARENT of related-lookup, related-lookup BelongsTo named-query-element, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this RELATED-LOOKUP is DELETED also
    required:
    - related-lookup-uuid
    - source-node-type
    - source-node-property
    - target-node-type
    - target-node-property
    properties:
      related-lookup-uuid:
        type: string
      source-node-type:
        type: string
      source-node-property:
        type: string
      target-node-type:
        type: string
      target-node-property:
        type: string
      property-collect-list:
        type: string
  related-lookups:
    properties:
      related-lookup:
        type: array
        items:          
          $ref: "#/patchDefinitions/related-lookup"
  related-to-property:
    properties:
      property-key:
        type: string
        description: Key part of a key/value pair
      property-value:
        type: string
        description: Value part of a key/value pair
  relationship:
    description: |
      dictionary of relationship
    type: object
    properties:
      relationship:
        type: array
        items:
          $ref: "#/patchDefinitions/relationship-dict"
  relationship-data:
    required:
    - relationship-key
    - relationship-value
    properties:
      relationship-key:
        type: string
        description: A keyword provided by A&AI to indicate an attribute.
      relationship-value:
        type: string
        description: Value of the attribute.
  relationship-dict:
    properties:
      related-to:
        type: string
        description: A keyword provided by A&AI to indicate type of node.
      relationship-label:
        type: string
        description: The edge label for this relationship.
      related-link:
        type: string
        description: URL to the object in A&AI.
      relationship-data:
        type: array
        items:          
          $ref: "#/patchDefinitions/relationship-data"
      related-to-property:
        type: array
        items:          
          $ref: "#/patchDefinitions/related-to-property"
  reserved-prop-names:
    description: |
      Internal map to define some reserved properties of a vertex
    properties:
      last-mod-source-of-truth:
        type: string
      aai-node-type:
        type: string
      aai-created-ts:
        type: integer
        format: int64
      aai-unique-key:
        type: string
      aai-last-mod-ts:
        type: integer
        format: int64
      source-of-truth:
        type: string
      aai-uri:
        type: string
  response-list:
    description: |
      Response container for the results of a named-query or model query
    properties:
      inventory-response-items:
        type: object
        $ref: "#/patchDefinitions/inventory-response-items"
  result-data:
    properties:
      resource-type:
        type: string
        description: The specific type of node in the A&AI graph
      resource-link:
        type: string
        description: The URL to the specific resource
  route-table-reference:
    description: |
      Openstack route table reference.
      ###### Related Nodes
      - FROM l3-network( l3-network Uses route-table-reference, MANY2MANY)
    required:
    - route-table-reference-id
    - route-table-reference-fqdn
    properties:
      route-table-reference-id:
        type: string
        description: Route Table Reference id, UUID assigned to this instance.
      route-table-reference-fqdn:
        type: string
        description: FQDN entry in the route table.
  route-table-references:
    description: |
      Collection of openstack route table references
    properties:
      route-table-reference:
        type: array
        items:          
          $ref: "#/patchDefinitions/route-table-reference"
  route-target:
    description: |
      Route target information
      ###### Related Nodes
      - TO vpn-binding (PARENT of route-target, route-target BelongsTo vpn-binding, MANY2ONE)(4)
      - TO vrf (PARENT of route-target, route-target BelongsTo vrf, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this ROUTE-TARGET is DELETED also
    required:
    - global-route-target
    - route-target-role
    properties:
      global-route-target:
        type: string
        description: Number used to identify an RT, globally unique in the network
      route-target-role:
        type: string
        description: Role assigned to this route target
  route-targets:
    description: |
      Collection of route target information
    properties:
      route-target:
        type: array
        items:          
          $ref: "#/patchDefinitions/route-target"
  routing-instance:
    description: |
      ###### Related Nodes
      - TO site-pair-set (PARENT of routing-instance, routing-instance BelongsTo site-pair-set, MANY2ONE)(4)
      - FROM site-pair (CHILD of routing-instance, site-pair BelongsTo routing-instance, MANY2ONE)(1)

      -(1) IF this ROUTING-INSTANCE node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this ROUTING-INSTANCE is DELETED also
    required:
    - routing-instance-id
    properties:
      routing-instance-id:
        type: string
        description: Unique id of routing instance
      rpm-owner:
        type: string
        description: rpm owner
  routing-instances:
    description: |
      set of probes related to generic-vnf routing instance
    properties:
      routing-instance:
        type: array
        items:          
          $ref: "#/patchDefinitions/routing-instance"
  sdn-zone-response:
    properties:
      oam-networks:
        type: object
        $ref: "#/patchDefinitions/oam-networks"
      az-and-dvs-switches:
        type: array
        items:          
          $ref: "#/patchDefinitions/az-and-dvs-switches"
  sdwan-vpn:
    description: |
      Instance of an sdwan-vpn
      ###### Related Nodes
      - TO ext-aai-network( sdwan-vpn BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( sdwan-vpn PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - TO tenant( sdwan-vpn PartOf tenant, ONE2MANY)
      For CCVPN Usecase
      - TO vpn-binding( sdwan-vpn PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this SDWAN-VPN node is deleted, this TO node is DELETED also
    required:
    - sdwan-vpn-id
    properties:
      sdwan-vpn-id:
        type: string
        description: Uniquely identifies this sdwan-vpn by id
      sdwan-vpn-name:
        type: string
        description: Store the name of this sdwan-vpn.
      vxlan-id:
        type: string
        description: Store the vxlan-id of this sdwan-vpn.
      topology:
        type: string
        description: Store the topology of this sdwan-vpn.
      tenant-id:
        type: string
        description: Store the tenant-id of this sdwan-vpn.
      vpn-id:
        type: string
        description: Store the vpn-id of this sdwan-vpn.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
  sdwan-vpns:
    description: |
      Collection of sdwan-vpns
    properties:
      sdwan-vpn:
        type: array
        items:          
          $ref: "#/patchDefinitions/sdwan-vpn"
  search:
    properties:
      edge-tag-query-result:
        type: object
        $ref: "#/patchDefinitions/edge-tag-query-result"
      edge-tag-query-request:
        type: object
        $ref: "#/patchDefinitions/edge-tag-query-request"
      search-results:
        type: object
        $ref: "#/patchDefinitions/search-results"
      sdn-zone-response:
        type: object
        $ref: "#/patchDefinitions/sdn-zone-response"
  search-results:
    properties:
      result-data:
        type: array
        items:          
          $ref: "#/patchDefinitions/result-data"
  secondary-filt:
    description: |
      SecondaryFilt for performing a named-query or model query
  secondary-filter:
    properties:
      property-name:
        type: string
      filter-type:
        type: string
      property-value:
        type: string
  secondary-filts:
    description: |
      SecondaryFilts for performing a named-query or model query
    properties:
      secondary-filt:
        type: array
        items:          
          $ref: "#/patchDefinitions/secondary-filt"
  segmentation-assignment:
    description: |
      Openstack segmentation assignment.
      ###### Related Nodes
      - TO l3-network (PARENT of segmentation-assignment, segmentation-assignment BelongsTo l3-network, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this SEGMENTATION-ASSIGNMENT is DELETED also
    required:
    - segmentation-id
    properties:
      segmentation-id:
        type: string
        description: Route Table Reference id, UUID assigned to this instance.
  segmentation-assignments:
    description: |
      Collection of openstack segmentation assignments
    properties:
      segmentation-assignment:
        type: array
        items:          
          $ref: "#/patchDefinitions/segmentation-assignment"
  service:
    description: |
      Stand-in for service model definitions.  Likely to be deprecated in favor of models from ASDC.  Does not strictly map to ASDC services.
    required:
    - service-id
    - service-description
    properties:
      service-id:
        type: string
        description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
      service-description:
        type: string
        description: Description of the service
      service-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
  service-capabilities:
    description: |
      Collection of service capabilities.
    properties:
      service-capability:
        type: array
        items:          
          $ref: "#/patchDefinitions/service-capability"
  service-capability:
    description: |
      Early definition of server/resource pairings, likely to be replaced by models.  No new use should be made of this.
      ###### Related Nodes
      - FROM availability-zone( availability-zone AppliesTo service-capability, MANY2MANY)
      - FROM oam-network( oam-network AppliesTo service-capability, MANY2MANY)

      -SERVICE-CAPABILITY cannot be deleted if related to AVAILABILITY-ZONE,OAM-NETWORK
    required:
    - service-type
    - vnf-type
    properties:
      service-type:
        type: string
        description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
  service-design-and-creation:
    description: |
      Namespace for objects managed by ASDC
    properties:
      vnf-images:
        type: array
        items:
          $ref: "#/patchDefinitions/vnf-image"
      services:
        type: array
        items:
          $ref: "#/patchDefinitions/service"
      service-capabilities:
        type: array
        items:
          $ref: "#/patchDefinitions/service-capability"
      models:
        type: array
        items:
          $ref: "#/patchDefinitions/model"
      named-queries:
        type: array
        items:
          $ref: "#/patchDefinitions/named-query"
  service-instance:
    description: |
      Instance of a service
      ###### Related Nodes
      - TO allotted-resource( service-instance Uses allotted-resource, MANY2MANY)
      - TO collection( service-instance ComposedOf collection, ONE2ONE)
      - TO configuration( service-instance Uses configuration, ONE2MANY)
      - TO configuration( service-instance ComposedOf configuration, MANY2MANY)
      - TO connector( service-instance Uses connector, MANY2MANY)
      - TO ctag-assignment( service-instance Uses ctag-assignment, ONE2MANY)
      - TO cvlan-tag( service-instance ComposedOf cvlan-tag, MANY2MANY)
      - TO generic-vnf( service-instance ComposedOf generic-vnf, ONE2MANY)
      - TO instance-group( service-instance Uses instance-group, ONE2MANY)
      MSO creates this edge on VNF Group Service creation
      - TO instance-group( service-instance MemberOf instance-group, MANY2MANY)
      - TO l3-network( service-instance ComposedOf l3-network, ONE2MANY)
      - TO logical-link( service-instance Uses logical-link, MANY2MANY)(2)
      - TO owning-entity( service-instance BelongsTo owning-entity, MANY2ONE)
      - TO pnf( service-instance ComposedOf pnf, ONE2MANY)
      - TO service-instance( service-instance ComposedOf service-instance, ONE2MANY)
      - TO service-subscription (PARENT of service-instance, service-instance BelongsTo service-subscription, MANY2ONE)(4)
      - TO vce( service-instance ComposedOf vce, ONE2MANY)
      - TO vlan( service-instance ComposedOf vlan, ONE2MANY)
      - TO zone( service-instance LocatedIn zone, MANY2ONE)
      - FROM allotted-resource (CHILD of service-instance, allotted-resource BelongsTo service-instance, MANY2ONE)(1)
      - FROM connectivity( connectivity PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM device( device PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM forwarding-path( forwarding-path AppliesTo service-instance, MANY2ONE)(1)
      - FROM lan-port-config( lan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM metadatum (CHILD of service-instance, metadatum BelongsTo service-instance, MANY2ONE)(1)
      - FROM project( project Uses service-instance, ONE2MANY)
      - FROM sdwan-vpn( sdwan-vpn PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM service-instance( service-instance ComposedOf service-instance, ONE2MANY)
      - FROM site-resource( site-resource PartOf service-instance, MANY2MANY)
      For CCVPN Usecase
      - FROM sp-partner( sp-partner PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM wan-port-config( wan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(1) IF this SERVICE-INSTANCE node is deleted, this FROM node is DELETED also
      -(2) IF this SERVICE-INSTANCE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this SERVICE-INSTANCE is DELETED also
    required:
    - service-instance-id
    properties:
      service-instance-id:
        type: string
        description: Uniquely identifies this instance of a service
      service-instance-name:
        type: string
        description: This field will store a name assigned to the service-instance.
      service-type:
        type: string
        description: String capturing type of service.
      service-role:
        type: string
        description: String capturing the service role.
      environment-context:
        type: string
        description: This field will store the environment context assigned to the service-instance.
      workload-context:
        type: string
        description: This field will store the workload context assigned to the service-instance.
      created-at:
        type: string
        description: create time of Network Service.
      updated-at:
        type: string
        description: last update of Network Service.
      description:
        type: string
        description: short description for service-instance.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      bandwidth-total:
        type: string
        description: Indicates the total bandwidth to be used for this service.
      vhn-portal-url:
        type: string
        description: URL customers will use to access the vHN Portal.
      service-instance-location-id:
        type: string
        description: An identifier that customers assign to the location where this service is being used.
  service-instances:
    description: |
      Collection of service instances
    properties:
      service-instance:
        type: array
        items:          
          $ref: "#/patchDefinitions/service-instance"
  service-subscription:
    description: |
      Object that group service instances.
      ###### Related Nodes
      - TO customer (PARENT of service-subscription, service-subscription BelongsTo customer, MANY2ONE)(4)
      - TO tenant( service-subscription Uses tenant, MANY2MANY)
      - FROM service-instance (CHILD of service-subscription, service-instance BelongsTo service-subscription, MANY2ONE)(1)

      -(1) IF this SERVICE-SUBSCRIPTION node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SERVICE-SUBSCRIPTION is DELETED also
    required:
    - service-type
    properties:
      service-type:
        type: string
        description: Value defined by orchestration to identify this service across ONAP.
      temp-ub-sub-account-id:
        type: string
        description: This property will be deleted from A&AI in the near future. Only stop gap solution.
  service-subscriptions:
    description: |
      Collection of objects that group service instances.
    properties:
      service-subscription:
        type: array
        items:          
          $ref: "#/patchDefinitions/service-subscription"
  services:
    description: |
      Collection of service model definitions.  Likely to be deprecated in favor of models from ASDC.
    properties:
      service:
        type: array
        items:          
          $ref: "#/patchDefinitions/service"
  site-pair:
    description: |
      ###### Related Nodes
      - TO routing-instance (PARENT of site-pair, site-pair BelongsTo routing-instance, MANY2ONE)(4)
      - FROM class-of-service (CHILD of site-pair, class-of-service BelongsTo site-pair, MANY2ONE)(1)

      -(1) IF this SITE-PAIR node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SITE-PAIR is DELETED also
    required:
    - site-pair-id
    properties:
      site-pair-id:
        type: string
        description: unique identifier of probe
      source-ip:
        type: string
        description: Prefix address
      destination-ip:
        type: string
        description: Prefix address
      ip-version:
        type: string
        description: ip version, v4, v6
      destination-hostname:
        type: string
        description: Hostname of the destination equipment to which SLAs are measured against.
      destination-equip-type:
        type: string
        description: The type of destinatination equipment. Could be Router, UCPE, etc.
  site-pair-set:
    description: |
      Set of instances for probes used to measure service level agreements
      ###### Related Nodes
      - TO generic-vnf( site-pair-set AppliesTo generic-vnf, MANY2MANY)
      - FROM routing-instance (CHILD of site-pair-set, routing-instance BelongsTo site-pair-set, MANY2ONE)(1)

      -(1) IF this SITE-PAIR-SET node is deleted, this FROM node is DELETED also
    required:
    - site-pair-set-id
    properties:
      site-pair-set-id:
        type: string
        description: Unique id of site pair set.
  site-pair-sets:
    description: |
      Collection of sets of instances for probes related to generic-vnf
    properties:
      site-pair-set:
        type: array
        items:          
          $ref: "#/patchDefinitions/site-pair-set"
  site-pairs:
    description: |
      probe within a set
    properties:
      site-pair:
        type: array
        items:          
          $ref: "#/patchDefinitions/site-pair"
  site-resource:
    description: |
      Instance of a site-resource
      ###### Related Nodes
      - TO allotted-resource( site-resource Uses allotted-resource, MANY2MANY)
      For CCVPN Usecase
      - TO complex( site-resource Uses complex, MANY2MANY)
      For CCVPN Usecase
      - TO ext-aai-network( site-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( site-resource PartOf service-instance, MANY2MANY)
      For CCVPN Usecase

      -(2) IF this SITE-RESOURCE node is deleted, this TO node is DELETED also
    required:
    - site-resource-id
    properties:
      site-resource-id:
        type: string
        description: Uniquely identifies this site-resource by id
      site-resource-name:
        type: string
        description: Store the name of this site-resource.
      description:
        type: string
        description: Store the description of this site-resource.
      type:
        type: string
        description: Store the type of this site-resource.
      role:
        type: string
        description: Store the role of this site-resource.
      generated-site-id:
        type: string
        description: Store the generated-site-id of this site-resource.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
  site-resources:
    description: |
      Collection of site-resources
    properties:
      site-resource:
        type: array
        items:          
          $ref: "#/patchDefinitions/site-resource"
  snapshot:
    description: |
      Openstack snapshot
      ###### Related Nodes
      - TO cloud-region (PARENT of snapshot, snapshot BelongsTo cloud-region, MANY2ONE)
      - FROM vserver( vserver Uses snapshot, ONE2ONE)
    required:
    - snapshot-id
    properties:
      snapshot-id:
        type: string
        description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
      snapshot-name:
        type: string
        description: Snapshot name
      snapshot-architecture:
        type: string
        description: Operating system architecture
      snapshot-os-distro:
        type: string
        description: The common name of the operating system distribution in lowercase
      snapshot-os-version:
        type: string
        description: The operating system version as specified by the distributor.
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      snapshot-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      prev-snapshot-id:
        type: string
        description: This field contains the UUID of the previous snapshot (if any).
  snapshots:
    description: |
      Collection of openstack snapshots
    properties:
      snapshot:
        type: array
        items:          
          $ref: "#/patchDefinitions/snapshot"
  software-version:
    description: |
      Software Version
      ###### Related Nodes
      - TO pnf (PARENT of software-version, software-version BelongsTo pnf, MANY2ONE)
    required:
    - software-version-id
    - is-active-sw-ver
    properties:
      software-version-id:
        type: string
        description: Identifier of the software version
      is-active-sw-ver:
        type: boolean
        description: used to indicate whether or not this software-version is the active one (activeSw = true)
  software-versions:
    description: |
      Collection of software versions.
    properties:
      software-version:
        type: array
        items:          
          $ref: "#/patchDefinitions/software-version"
  sp-partner:
    description: |
      Instance of an sp-partner
      ###### Related Nodes
      - TO service-instance( sp-partner PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
    required:
    - sp-partner-id
    properties:
      sp-partner-id:
        type: string
        description: Uniquely identifies this sp-partner by id
      url:
        type: string
        description: Store the URL of this sp-partner.
      callsource:
        type: string
        description: Store the callsource of this sp-partner.
  sp-partners:
    description: |
      Collection of sp-partners
    properties:
      sp-partner:
        type: array
        items:          
          $ref: "#/patchDefinitions/sp-partner"
  sriov-pf:
    description: |
      SR-IOV Physical Function
      ###### Related Nodes
      - TO p-interface (PARENT of sriov-pf, sriov-pf BelongsTo p-interface, ONE2ONE)(4)
      - FROM sriov-vf( sriov-vf Uses sriov-pf, MANY2ONE)

      -(4) IF this TO node is deleted, this SRIOV-PF is DELETED also
    required:
    - pf-pci-id
    properties:
      pf-pci-id:
        type: string
        description: Identifier for the sriov-pf
  sriov-pfs:
    description: |
      Collection of SR-IOV Physical Functions.
    properties:
      sriov-pf:
        type: array
        items:          
          $ref: "#/patchDefinitions/sriov-pf"
  sriov-vf:
    description: |
      SR-IOV Virtual Function (not to be confused with virtual network function)
      ###### Related Nodes
      - TO l-interface (PARENT of sriov-vf, sriov-vf BelongsTo l-interface, ONE2ONE)(4)
      - TO sriov-pf( sriov-vf Uses sriov-pf, MANY2ONE)

      -(4) IF this TO node is deleted, this SRIOV-VF is DELETED also
    required:
    - pci-id
    properties:
      pci-id:
        type: string
        description: PCI ID used to identify the sriov-vf
      vf-vlan-filter:
        type: string
        description: This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM.
      vf-mac-filter:
        type: string
        description: When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM.
      vf-vlan-strip:
        type: boolean
        description: When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM.
      vf-vlan-anti-spoof-check:
        type: boolean
        description: This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs.
      vf-mac-anti-spoof-check:
        type: boolean
        description: This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs.
      vf-mirrors:
        type: string
        description: This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports.
      vf-broadcast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM
      vf-unknown-multicast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM
      vf-unknown-unicast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM
      vf-insert-stag:
        type: boolean
        description: This option, if set to true, instructs to insert outer tag after traffic comes out of VM.
      vf-link-status:
        type: string
        description: This option is used to set the link status.  Valid values as of 1607 are on, off, and auto.
  sriov-vfs:
    description: |
      Collection of SR-IOV Virtual Functions.
    properties:
      sriov-vf:
        type: array
        items:          
          $ref: "#/patchDefinitions/sriov-vf"
  start-node-filter:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  subnet:
    description: |
      ###### Related Nodes
      - TO l3-network (PARENT of subnet, subnet BelongsTo l3-network, MANY2ONE)(4)
      - FROM host-route (CHILD of subnet, host-route BelongsTo subnet, MANY2ONE)(1)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf subnet, MANY2MANY)
      - FROM vip-ipv4-address-list( vip-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list MemberOf subnet, MANY2MANY)

      -(1) IF this SUBNET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SUBNET is DELETED also
      -SUBNET cannot be deleted if related to L3-INTERFACE-IPV4-ADDRESS-LIST,L3-INTERFACE-IPV6-ADDRESS-LIST,VIP-IPV4-ADDRESS-LIST,VIP-IPV6-ADDRESS-LIST
    required:
    - subnet-id
    - dhcp-enabled
    properties:
      subnet-id:
        type: string
        description: Subnet ID, should be UUID.
      subnet-name:
        type: string
        description: Name associated with the subnet.
      neutron-subnet-id:
        type: string
        description: Neutron id of this subnet
      gateway-address:
        type: string
        description: gateway ip address
      network-start-address:
        type: string
        description: network start address
      cidr-mask:
        type: string
        description: cidr mask
      ip-version:
        type: string
        description: ip version
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      dhcp-enabled:
        type: boolean
        description: dhcp enabled
      dhcp-start:
        type: string
        description: the start address reserved for use by dhcp
      dhcp-end:
        type: string
        description: the last address reserved for use by dhcp
      subnet-role:
        type: string
        description: role of the subnet, referenced when assigning IPs
      ip-assignment-direction:
        type: string
        description: ip address assignment direction of the subnet
  subnets:
    properties:
      subnet:
        type: array
        items:          
          $ref: "#/patchDefinitions/subnet"
  tagged-inventory-item-list:
    properties:
      inventory-item:
        type: array
        items:          
          $ref: "#/patchDefinitions/inventory-item"
  tenant:
    description: |
      Openstack tenant
      ###### Related Nodes
      - TO cloud-region (PARENT of tenant, tenant BelongsTo cloud-region, MANY2ONE)
      - TO group-assignment( tenant MemberOf group-assignment, MANY2MANY)
      - TO l3-network( tenant Uses l3-network, MANY2MANY)
      - TO volume-group( tenant DependsOn volume-group, ONE2MANY)
      - FROM generic-vnf( generic-vnf BelongsTo tenant, MANY2ONE)
      - FROM nos-server (CHILD of tenant, nos-server BelongsTo tenant, MANY2ONE)
      - FROM sdwan-vpn( sdwan-vpn PartOf tenant, ONE2MANY)
      For CCVPN Usecase
      - FROM service-subscription( service-subscription Uses tenant, MANY2MANY)
      - FROM vserver (CHILD of tenant, vserver BelongsTo tenant, MANY2ONE)

      -TENANT cannot be deleted if related to NOS-SERVER,VSERVER
    required:
    - tenant-id
    - tenant-name
    properties:
      tenant-id:
        type: string
        description: Unique id relative to the cloud-region.
      tenant-name:
        type: string
        description: Readable name of tenant
      tenant-context:
        type: string
        description: This field will store the tenant context.
  tenants:
    description: |
      Collection of openstack tenants.
    properties:
      tenant:
        type: array
        items:          
          $ref: "#/patchDefinitions/tenant"
  tunnel-xconnect:
    description: |
      Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted
      ###### Related Nodes
      - TO allotted-resource (PARENT of tunnel-xconnect, tunnel-xconnect BelongsTo allotted-resource, ONE2ONE)(4)

      -(4) IF this TO node is deleted, this TUNNEL-XCONNECT is DELETED also
    required:
    - id
    properties:
      id:
        type: string
        description: Allotted Resource id UUID assigned to this instance.
  tunnel-xconnects:
    description: |
      This object is used to store the specific tunnel cross connect aspects of an allotted resource
    properties:
      tunnel-xconnect:
        type: array
        items:          
          $ref: "#/patchDefinitions/tunnel-xconnect"
  update:
    description: |
      Serves a PATCH like function.  Does not enforce concurrency control.  Clear each usage with AAI team.
    required:
    - update-node-type
    properties:
      update-node-type:
        type: string
      update-node-key:
        type: array
        items:          
          $ref: "#/patchDefinitions/update-node-key"
      update-node-uri:
        type: string
      action:
        type: array
        items:          
          $ref: "#/patchDefinitions/action"
  update-node-key:
    properties:
      key-name:
        type: string
      key-value:
        type: string
  vce:
    description: |
      Virtual Customer Edge Router, used specifically for Gamma.  This object is deprecated.
      ###### Related Nodes
      - TO availability-zone( vce Uses availability-zone, MANY2MANY)
      - TO complex( vce LocatedIn complex, MANY2MANY)
      - TO vserver( vce HostedOn vserver, ONE2MANY)
      - FROM entitlement (CHILD of vce, entitlement BelongsTo vce, MANY2ONE)(1)
      - FROM license (CHILD of vce, license BelongsTo vce, MANY2ONE)(1)
      - FROM port-group (CHILD of vce, port-group BelongsTo vce, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf vce, ONE2MANY)

      -(1) IF this VCE node is deleted, this FROM node is DELETED also
    required:
    - vnf-id
    - vnf-name
    - vnf-type
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      service-id:
        type: string
        description: Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED.
      regional-resource-zone:
        type: string
        description: Regional way of organizing pservers, source of truth should define values
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      license-key:
        type: string
        description: OBSOLETE -  do not use
      equipment-role:
        type: string
        description: Network role being played by this VNF
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      vpe-id:
        type: string
        description: Unique ID of VPE connected to this VCE.
      v6-vce-wan-address:
        type: string
        description: Valid v6 IP address for the WAN Link on this router.  Implied length of /64.
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE.
  vces:
    description: |
      Collection of Virtual Customer Edge Routers, used specifically for Gamma.  This object is deprecated.
    properties:
      vce:
        type: array
        items:          
          $ref: "#/patchDefinitions/vce"
  vf-module:
    description: |
      a deployment unit of VNFCs
      ###### Related Nodes
      - TO generic-vnf (PARENT of vf-module, vf-module BelongsTo generic-vnf, MANY2ONE)(4)
      - TO l3-network( vf-module DependsOn l3-network, MANY2MANY)
      - TO vnfc( vf-module Uses vnfc, ONE2MANY)(2)
      - TO volume-group( vf-module Uses volume-group, ONE2ONE)
      - TO vserver( vf-module Uses vserver, ONE2MANY)

      -(2) IF this VF-MODULE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this VF-MODULE is DELETED also
    required:
    - vf-module-id
    - is-base-vf-module
    - automated-assignment
    properties:
      vf-module-id:
        type: string
        description: Unique ID of vf-module.
      vf-module-name:
        type: string
        description: Name of vf-module
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance.
      orchestration-status:
        type: string
        description: orchestration status of this vf-module, mastered by MSO
      is-base-vf-module:
        type: boolean
        description: used to indicate whether or not this object is base vf module
      automated-assignment:
        type: boolean
        description: Indicates whether vf-module assignment was done via automation or manually
  vf-modules:
    description: |
      Collection of vf-modules, a deployment unit of VNFCs
    properties:
      vf-module:
        type: array
        items:          
          $ref: "#/patchDefinitions/vf-module"
  vig-server:
    description: |
      vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607
      ###### Related Nodes
      - TO ipsec-configuration (PARENT of vig-server, vig-server BelongsTo ipsec-configuration, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this VIG-SERVER is DELETED also
    required:
    - vig-address-type
    properties:
      vig-address-type:
        type: string
        description: indicates whether the VIG is for AVPN or INTERNET
      ipaddress-v4-vig:
        type: string
        description: v4 IP of the vig server
      ipaddress-v6-vig:
        type: string
        description: v6 IP of the vig server
  vig-servers:
    properties:
      vig-server:
        type: array
        items:          
          $ref: "#/patchDefinitions/vig-server"
  vip-ipv4-address-list:
    description: |
      IPv4 Address Range
      ###### Related Nodes
      - TO cloud-region (PARENT of vip-ipv4-address-list, vip-ipv4-address-list BelongsTo cloud-region, MANY2ONE)
      - TO cp( vip-ipv4-address-list Uses cp, MANY2MANY)
      - TO instance-group( vip-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - TO subnet( vip-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM vnfc( vnfc Uses vip-ipv4-address-list, MANY2MANY)
    required:
    - vip-ipv4-address
    properties:
      vip-ipv4-address:
        type: string
        description: IP address
      vip-ipv4-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 32 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
  vip-ipv6-address-list:
    description: |
      IPv6 Address Range
      ###### Related Nodes
      - TO cloud-region (PARENT of vip-ipv6-address-list, vip-ipv6-address-list BelongsTo cloud-region, MANY2ONE)
      - TO cp( vip-ipv6-address-list Uses cp, MANY2MANY)
      - TO instance-group( vip-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - TO subnet( vip-ipv6-address-list MemberOf subnet, MANY2MANY)
      - FROM vnfc( vnfc Uses vip-ipv6-address-list, MANY2MANY)
    required:
    - vip-ipv6-address
    properties:
      vip-ipv6-address:
        type: string
        description: IP address
      vip-ipv6-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 128 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
  virtual-data-center:
    description: |
      Virtual organization of cloud infrastructure elements in a data center context
      ###### Related Nodes
      - FROM connector( connector LocatedIn virtual-data-center, MANY2MANY)
      - FROM generic-vnf( generic-vnf LocatedIn virtual-data-center, MANY2MANY)
      - FROM logical-link( logical-link LocatedIn virtual-data-center, MANY2MANY)
    required:
    - vdc-id
    - vdc-name
    properties:
      vdc-id:
        type: string
        description: Unique ID of the vdc
      vdc-name:
        type: string
        description: Name of the virtual data center
  virtual-data-centers:
    description: |
      Virtual organization of cloud infrastructure elements in a data center context
    properties:
      virtual-data-center:
        type: array
        items:          
          $ref: "#/patchDefinitions/virtual-data-center"
  vlan:
    description: |
      Definition of vlan
      ###### Related Nodes
      - TO l-interface (PARENT of vlan, vlan LinksTo l-interface, MANY2ONE)(4)
      - TO logical-link( vlan Uses logical-link, MANY2MANY)(2)
      - TO multicast-configuration( vlan Uses multicast-configuration, MANY2MANY)
      - FROM allotted-resource( allotted-resource PartOf vlan, MANY2MANY)
      - FROM l3-interface-ipv4-address-list (CHILD of vlan, l3-interface-ipv4-address-list BelongsTo vlan, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of vlan, l3-interface-ipv6-address-list BelongsTo vlan, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf vlan, ONE2MANY)

      -(1) IF this VLAN node is deleted, this FROM node is DELETED also
      -(2) IF this VLAN node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this VLAN is DELETED also
    required:
    - vlan-interface
    - in-maint
    - is-ip-unnumbered
    properties:
      vlan-interface:
        type: string
        description: String that identifies the interface
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
  vlan-mapping:
    description: |
      vlan-mapping object is an optional child object of the forwarder-evc object.  A given forwarder-evc object may have multiple vlan-mapping objects.
      ###### Related Nodes
      - TO forwarder-evc (PARENT of vlan-mapping, vlan-mapping BelongsTo forwarder-evc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this VLAN-MAPPING is DELETED also
    required:
    - vlan-mapping-id
    properties:
      vlan-mapping-id:
        type: string
        description: Key for vlan-mapping object.
      uni-cvlan:
        type: string
        description: CVLAN value from the UNI/ingress side of the SAREA gateway access device.
      nni-svlan:
        type: string
        description: SVLAN value from the NNI/egress side of the SAREA gateway access device.
      nni-cvlan:
        type: string
        description: CVLAN value from the NNI/egress side of the SAREA gateway access device.
      ivlan:
        type: string
        description: The internal VLAN ('IVLAN') value.  Specific to Arista devices.
  vlan-mappings:
    description: |
      Collection of vlan mappings.
    properties:
      vlan-mapping:
        type: array
        items:          
          $ref: "#/patchDefinitions/vlan-mapping"
  vlan-tag:
    description: |
      ###### Related Nodes
      - TO cloud-region( vlan-tag BelongsTo cloud-region, MANY2ONE)
      - TO cp( vlan-tag Uses cp, MANY2MANY)
      - TO l3-network( vlan-tag BelongsTo l3-network, MANY2MANY)
    required:
    - vlan-tag-id
    - vlan-tag-role
    - vlan-id-outer
    - is-private
    properties:
      vlan-tag-id:
        type: string
        description: Unique ID of the vlan-tag
      vlan-tag-role:
        type: string
        description: purpose (l3-network to be connected to)
      vlan-id-inner:
        type: integer
        format: int32
        description: VLAN inner id
      vlan-id-outer:
        type: integer
        format: int32
        description: VLAN outer id
      is-private:
        type: boolean
        description: is VLAN private?
  vlan-tags:
    properties:
      vlan-tag:
        type: array
        items:          
          $ref: "#/patchDefinitions/vlan-tag"
  vlans:
    properties:
      vlan:
        type: array
        items:          
          $ref: "#/patchDefinitions/vlan"
  vnf:
    description: |
      Abstract vnf class
    required:
    - vnf-id
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
  vnf-image:
    description: |
      Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge.
      ###### Related Nodes
      - FROM generic-vnf( generic-vnf Uses vnf-image, MANY2ONE)

      -VNF-IMAGE cannot be deleted if related to GENERIC-VNF
    required:
    - vnf-image-uuid
    - application
    - application-vendor
    properties:
      vnf-image-uuid:
        type: string
        description: Unique ID of this asset
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details
  vnf-images:
    description: |
      Collection of image objects that pertain to a VNF that doesn't have associated vservers.  This is a kludge.
    properties:
      vnf-image:
        type: array
        items:          
          $ref: "#/patchDefinitions/vnf-image"
  vnfc:
    description: |
      ###### Related Nodes
      - TO cp (PARENT of vnfc, vnfc BelongsTo cp, ONE2MANY)
      cp is child of vnfc(2)
      - TO generic-vnf( vnfc BelongsTo generic-vnf, MANY2ONE)(4)
      - TO instance-group( vnfc MemberOf instance-group, MANY2MANY)
      - TO vip-ipv4-address-list( vnfc Uses vip-ipv4-address-list, MANY2MANY)
      - TO vip-ipv6-address-list( vnfc Uses vip-ipv6-address-list, MANY2MANY)
      - TO vserver( vnfc HostedOn vserver, ONE2MANY)
      - FROM configuration( configuration Uses vnfc, ONE2ONE)(1)
      - FROM l3-interface-ipv4-address-list (CHILD of vnfc, l3-interface-ipv4-address-list BelongsTo vnfc, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of vnfc, l3-interface-ipv6-address-list BelongsTo vnfc, MANY2ONE)(1)
      - FROM vf-module( vf-module Uses vnfc, ONE2MANY)(3)

      -(1) IF this VNFC node is deleted, this FROM node is DELETED also
      -(2) IF this VNFC node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this VNFC is DELETED also
      -(4) IF this TO node is deleted, this VNFC is DELETED also
    required:
    - vnfc-name
    - nfc-naming-code
    - nfc-function
    - in-maint
    - is-closed-loop-disabled
    properties:
      vnfc-name:
        type: string
        description: Unique ID of vnfc.
      nfc-naming-code:
        type: string
        description: Short code that is used in naming instances of the item being modeled
      nfc-function:
        type: string
        description: English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service
      prov-status:
        type: string
        description: prov status of this vnfc
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by APP-C
      ipaddress-v4-oam-vip:
        type: string
        description: Oam V4 vip address of this vnfc
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      is-closed-loop-disabled:
        type: boolean
        description: used to indicate whether closed loop function is enabled on this node
      group-notation:
        type: string
        description: Group notation of VNFC
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
  vnfcs:
    description: |
      virtual network components associated with a vserver from application controller.
    properties:
      vnfc:
        type: array
        items:          
          $ref: "#/patchDefinitions/vnfc"
  volume:
    description: |
      Ephemeral Block storage volume.
      ###### Related Nodes
      - FROM vserver (PARENT of volume, vserver AttachesTo volume, ONE2MANY)(3)

      -(3) IF this FROM node is deleted, this VOLUME is DELETED also
    required:
    - volume-id
    - volume-selflink
    properties:
      volume-id:
        type: string
        description: Unique ID of block storage volume relative to the vserver.
      volume-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
  volume-group:
    description: |
      Persistent block-level storage.
      ###### Related Nodes
      - TO cloud-region (PARENT of volume-group, volume-group BelongsTo cloud-region, MANY2ONE)
      - TO complex( volume-group LocatedIn complex, MANY2ONE)
      - FROM generic-vnf( generic-vnf DependsOn volume-group, ONE2MANY)
      - FROM tenant( tenant DependsOn volume-group, ONE2MANY)
      - FROM vf-module( vf-module Uses volume-group, ONE2ONE)
    required:
    - volume-group-id
    - vnf-type
    properties:
      volume-group-id:
        type: string
        description: Unique ID of volume-group.
      volume-group-name:
        type: string
        description: Name of the volume group.
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this volume-group
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      orchestration-status:
        type: string
        description: Orchestration status of this volume-group
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      vf-module-model-customization-id:
        type: string
        description: helps relate the volume group to the vf-module whose components will require the volume group
  volume-groups:
    description: |
      Collection of persistent block-level storage.
    properties:
      volume-group:
        type: array
        items:          
          $ref: "#/patchDefinitions/volume-group"
  volumes:
    description: |
      Collection of ephemeral Block storage volumes.
    properties:
      volume:
        type: array
        items:          
          $ref: "#/patchDefinitions/volume"
  vpls-pe:
    description: |
      VPLS Provider Edge routers.
      ###### Related Nodes
      - TO complex( vpls-pe LocatedIn complex, MANY2ONE)
      - TO ctag-pool( vpls-pe Uses ctag-pool, MANY2MANY)
      - FROM lag-interface (CHILD of vpls-pe, lag-interface BindsTo vpls-pe, MANY2ONE)(1)
      - FROM p-interface (CHILD of vpls-pe, p-interface BindsTo vpls-pe, MANY2ONE)(1)

      -(1) IF this VPLS-PE node is deleted, this FROM node is DELETED also
    required:
    - equipment-name
    properties:
      equipment-name:
        type: string
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address).
      equipment-role:
        type: string
        description: Client should send valid enumerated value, e.g., VPLS-PE.
      vlan-id-outer:
        type: integer
        format: int64
        description: Temporary location for stag to get to VCE
  vpls-pes:
    description: |
      Collection of VPLS Provider Edge routers
    properties:
      vpls-pe:
        type: array
        items:          
          $ref: "#/patchDefinitions/vpls-pe"
  vpn-binding:
    description: |
      VPN binding
      ###### Related Nodes
      - TO customer( vpn-binding Uses customer, MANY2MANY)
      - TO ext-aai-network( vpn-binding BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO p-interface( vpn-binding BindsTo p-interface, ONE2MANY)
      For CCVPN Usecase
      - FROM allotted-resource( allotted-resource BelongsTo vpn-binding, MANY2MANY)
      - FROM configuration( configuration Uses vpn-binding, MANY2ONE)
      - FROM connectivity( connectivity PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM l3-network( l3-network Uses vpn-binding, MANY2MANY)
      - FROM logical-link( logical-link Uses vpn-binding, MANY2MANY)
      - FROM network-resource( network-resource Uses vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM route-target (CHILD of vpn-binding, route-target BelongsTo vpn-binding, MANY2ONE)(1)
      - FROM sdwan-vpn( sdwan-vpn PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM vrf( vrf AppliesTo vpn-binding, MANY2ONE)
      A vrf uses a vpn-binding.

      -(1) IF this VPN-BINDING node is deleted, this FROM node is DELETED also
      -(2) IF this VPN-BINDING node is deleted, this TO node is DELETED also
      -VPN-BINDING cannot be deleted if related to ALLOTTED-RESOURCE,L3-NETWORK,LOGICAL-LINK
    required:
    - vpn-id
    - vpn-name
    properties:
      vpn-id:
        type: string
        description: VPN ID, globally unique within A&AI
      vpn-name:
        type: string
        description: VPN Name
      vpn-platform:
        type: string
        description: the platform associated with the VPN example AVPN, Mobility
      vpn-type:
        type: string
        description: Type of the vpn, should be taken from enumerated/valid values
      vpn-region:
        type: string
        description: region of customer vpn
      customer-vpn-id:
        type: string
        description: id for this customer vpn
      route-distinguisher:
        type: string
        description: Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this vpn.
      access-client-id:
        type: string
        description: Store the id of the access client of this vpn.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this vpn.
      src-access-node-id:
        type: string
        description: Store the id of the src-access-node of this vpn.
      src-access-ltp-id:
        type: string
        description: Store the id of the src-access-ltp of this vpn.
      dst-access-node-id:
        type: string
        description: Store the id of the dst-access-node of this vpn.
      dst-access-ltp-id:
        type: string
        description: Store the id of the dst-access-ltp of this vpn.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
  vpn-bindings:
    properties:
      vpn-binding:
        type: array
        items:          
          $ref: "#/patchDefinitions/vpn-binding"
  vrf:
    description: |
      Definition of vrf
      ###### Related Nodes
      - TO l-interface( vrf Uses l-interface, ONE2MANY)
      - TO l3-network( vrf Uses l3-network, ONE2MANY)
      A vrf uses many l3-networks
      - TO pnf (PARENT of vrf, vrf BelongsTo pnf, MANY2ONE)
      A vrf belongs to a pnf.(4)
      - TO vpn-binding( vrf AppliesTo vpn-binding, MANY2ONE)
      A vrf uses a vpn-binding.
      - FROM configuration( configuration Uses vrf, ONE2MANY)
      A Configuration uses VRFs
      - FROM route-target (CHILD of vrf, route-target BelongsTo vrf, MANY2ONE)(1)

      -(1) IF this VRF node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this VRF is DELETED also
    required:
    - vrf-id
    - vrf-name
    properties:
      vrf-id:
        type: string
        description: VRF UUID.
      vrf-name:
        type: string
        description: VRF Name
      vrf-description:
        type: string
        description: VRF Description
      route-distinguisher:
        type: string
        description: Route Distinguisher
      vrf-type:
        type: string
        description: The type of vrf (bridge-domain as an example)
      vrf-address-family:
        type: string
        description: IP address family (v6/v4/both)
  vrfs:
    properties:
      vrf:
        type: array
        items:          
          $ref: "#/patchDefinitions/vrf"
  vserver:
    description: |
      Virtual Servers, aka virtual machine or VM.
      ###### Related Nodes
      - TO flavor( vserver Uses flavor, MANY2ONE)
      - TO image( vserver Uses image, MANY2ONE)
      - TO pserver( vserver HostedOn pserver, MANY2ONE)
      - TO snapshot( vserver Uses snapshot, ONE2ONE)
      - TO tenant (PARENT of vserver, vserver BelongsTo tenant, MANY2ONE)
      - TO volume (PARENT of vserver, vserver AttachesTo volume, ONE2MANY)(2)
      - FROM generic-vnf( generic-vnf HostedOn vserver, ONE2MANY)
      - FROM l-interface (CHILD of vserver, l-interface BindsTo vserver, MANY2ONE)(1)
      - FROM vce( vce HostedOn vserver, ONE2MANY)
      - FROM vf-module( vf-module Uses vserver, ONE2MANY)
      - FROM vnfc( vnfc HostedOn vserver, ONE2MANY)

      -(1) IF this VSERVER node is deleted, this FROM node is DELETED also
      -(2) IF this VSERVER node is deleted, this TO node is DELETED also
    required:
    - vserver-id
    - vserver-name
    - vserver-selflink
    - in-maint
    - is-closed-loop-disabled
    properties:
      vserver-id:
        type: string
        description: Unique identifier for this vserver relative to its tenant
      vserver-name:
        type: string
        description: Name of vserver
      vserver-name2:
        type: string
        description: Alternative name of vserver
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      vserver-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      is-closed-loop-disabled:
        type: boolean
        description: Used to indicate whether closed loop function is enabled on this node
  vservers:
    description: |
      Collection of virtual Servers, aka virtual machines or VMs.
    properties:
      vserver:
        type: array
        items:          
          $ref: "#/patchDefinitions/vserver"
  wan-port-config:
    description: |
      Instance of a wan-port-config
      ###### Related Nodes
      - TO ext-aai-network( wan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( wan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this WAN-PORT-CONFIG node is deleted, this TO node is DELETED also
    required:
    - wan-port-config-id
    properties:
      wan-port-config-id:
        type: string
        description: Uniquely identifies this wan-port-config by id
      wan-port-config-name:
        type: string
        description: Store the name of this wan-port-config.
      device-id:
        type: string
        description: Store the id of the device of this wan-port-config.
      vlan-id:
        type: string
        description: Store the id of the vlan of this wan-port-config.
      ip-address:
        type: string
        description: Store the ip-address of this wan-port-config.
      ipv4-address:
        type: string
        description: Store the ipv4-address of this wan-port-config.
      ipv6-address:
        type: string
        description: Store the ipv6-address of this wan-port-config.
      provider-ip-address:
        type: string
        description: Store the provider-ip-address of this wan-port-config.
      provider-ipv4-address:
        type: string
        description: Store the provider-ipv4-address of this wan-port-config.
      provider-ipv6-address:
        type: string
        description: Store the provider-ipv6-address of this wan-port-config.
      input-bandwidth:
        type: string
        description: Store the input-bandwidth of this wan-port-config.
      output-bandwidth:
        type: string
        description: Store the output-bandwidth of this wan-port-config.
      description:
        type: string
        description: Store the description of this wan-port-config.
      port-type:
        type: string
        description: Store the port-type of this wan-port-config.
      port-number:
        type: string
        description: Store the port-number of this wan-port-config.
      transport-network-name:
        type: string
        description: Store the transport-network-name of this wan-port-config.
      device-port-id:
        type: string
        description: Store the device-port-id of this wan-port-config.
      wan-port-id:
        type: string
        description: Store the wan-port-id of this wan-port-config.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
  wan-port-configs:
    description: |
      Collection of wan-port-configs
    properties:
      wan-port-config:
        type: array
        items:          
          $ref: "#/patchDefinitions/wan-port-config"
  zone:
    description: |
      A zone is a grouping of assets in a location homing to the same connections into the CBB
      ###### Related Nodes
      - TO complex( zone LocatedIn complex, MANY2ONE)
      - FROM cloud-region( cloud-region LocatedIn zone, MANY2ONE)
      - FROM pnf( pnf LocatedIn zone, MANY2ONE)
      - FROM pserver( pserver LocatedIn zone, MANY2ONE)
      - FROM service-instance( service-instance LocatedIn zone, MANY2ONE)
    required:
    - zone-id
    - zone-name
    - design-type
    - zone-context
    - in-maint
    properties:
      zone-id:
        type: string
        description: Code assigned by AIC to the zone
      zone-name:
        type: string
        description: English name associated with the zone
      design-type:
        type: string
        description: Design of zone [Medium/Large…]
      zone-context:
        type: string
        description: Context of zone [production/test]
      status:
        type: string
        description: Status of a zone.
  zones:
    description: |
      Collection of zones
    properties:
      zone:
        type: array
        items:          
          $ref: "#/patchDefinitions/zone"
getDefinitions:
  action:
    properties:
      action-type:
        type: string
      action-data:
        type: array
        items:          
          $ref: "#/getDefinitions/action-data"
  action-data:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  actions:
    description: |
      APIs that are more action related than REST (e.g., notify, update).
    properties:
      update:
        type: object
        $ref: "#/getDefinitions/update"
      notify:
        type: object
        $ref: "#/getDefinitions/notify"
  aggregate-route:
    description: |
      Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&AI. 
      ###### Related Nodes
      - TO l3-network (PARENT of aggregate-route, aggregate-route BelongsTo l3-network, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this AGGREGATE-ROUTE is DELETED also
    required:
    - route-id
    - network-start-address
    - cidr-mask
    - ip-version
    properties:
      route-id:
        type: string
        description: Unique id of the aggregate-route instance
      network-start-address:
        type: string
        description: Name of the forwarding-path
      cidr-mask:
        type: string
        description: CIDR-mask for aggregate route subnet
      ip-version:
        type: string
        description: Identifies is aggregate route is ipv4 or ipv6
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  aggregate-routes:
    description: |
      Collection of aggregate routes.
    properties:
      aggregate-route:
        type: array
        items:          
          $ref: "#/getDefinitions/aggregate-route"
  allotted-resource:
    description: |
      Represents a slice or partial piece of a resource that gets separately allotted
      ###### Related Nodes
      - TO allotted-resource( allotted-resource BindsTo allotted-resource, ONE2ONE)
      AAI-1925
      - TO generic-vnf( allotted-resource PartOf generic-vnf, MANY2MANY)
      - TO instance-group( allotted-resource MemberOf instance-group, MANY2MANY)
      - TO l-interface( allotted-resource Uses l-interface, ONE2MANY)
      - TO l3-network( allotted-resource PartOf l3-network, MANY2MANY)
      - TO network-policy( allotted-resource Uses network-policy, ONE2ONE)
      - TO p-interface( allotted-resource Uses p-interface, ONE2MANY)
      AAI-1925 For CCVPN Usecase
      - TO service-instance (PARENT of allotted-resource, allotted-resource BelongsTo service-instance, MANY2ONE)(4)
      - TO vlan( allotted-resource PartOf vlan, MANY2MANY)
      - TO vpn-binding( allotted-resource BelongsTo vpn-binding, MANY2MANY)
      - FROM allotted-resource( allotted-resource BindsTo allotted-resource, ONE2ONE)
      AAI-1925
      - FROM configuration( configuration Uses allotted-resource, ONE2ONE)(3)
      - FROM service-instance( service-instance Uses allotted-resource, MANY2MANY)
      - FROM site-resource( site-resource Uses allotted-resource, MANY2MANY)
      For CCVPN Usecase
      - FROM tunnel-xconnect (CHILD of allotted-resource, tunnel-xconnect BelongsTo allotted-resource, ONE2ONE)(1)

      -(1) IF this ALLOTTED-RESOURCE node is deleted, this FROM node is DELETED also
      -(3) IF this FROM node is deleted, this ALLOTTED-RESOURCE is DELETED also
      -(4) IF this TO node is deleted, this ALLOTTED-RESOURCE is DELETED also
    required:
    - id
    properties:
      id:
        type: string
        description: Allotted Resource id UUID assigned to this instance.
      description:
        type: string
        description: The descriptive information assigned to this allotted resource instance
      selflink:
        type: string
        description: Link back to more information in the controller
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Concurrency value
      orchestration-status:
        type: string
        description: Orchestration status
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      type:
        type: string
        description: Generic description of the type of allotted resource.
      role:
        type: string
        description: role in the network that this resource will be providing.
      allotted-resource-name:
        type: string
        description: Store the name of this allotted-resource.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this allotted-resource.
      access-client-id:
        type: string
        description: Store the id of the access client of this allotted-resource.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this allotted-resource.
      access-node-id:
        type: string
        description: Store the id of the access node of this allotted-resource.
      access-ltp-id:
        type: string
        description: Store the id of the access ltp of this allotted-resource.
      cvlan:
        type: string
        description: Store the cvlan of this allotted-resource.
      vpn-name:
        type: string
        description: Store the vpn-name of this allotted-resource.
      tunnel-xconnects:
        type: array
        items:
          $ref: "#/getDefinitions/tunnel-xconnect"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  allotted-resources:
    description: |
      This object is used to store slices of services being offered
    properties:
      allotted-resource:
        type: array
        items:          
          $ref: "#/getDefinitions/allotted-resource"
  availability-zone:
    description: |
      Availability zone, a collection of compute hosts/pservers
      ###### Related Nodes
      - TO cloud-region (PARENT of availability-zone, availability-zone BelongsTo cloud-region, MANY2ONE)(4)
      - TO complex( availability-zone LocatedIn complex, MANY2ONE)
      - TO service-capability( availability-zone AppliesTo service-capability, MANY2MANY)
      - FROM ctag-pool( ctag-pool AppliesTo availability-zone, MANY2MANY)
      - FROM dvs-switch( dvs-switch AppliesTo availability-zone, MANY2MANY)
      - FROM generic-vnf( generic-vnf Uses availability-zone, MANY2MANY)
      - FROM pserver( pserver MemberOf availability-zone, MANY2ONE)
      - FROM vce( vce Uses availability-zone, MANY2MANY)

      -(4) IF this TO node is deleted, this AVAILABILITY-ZONE is DELETED also
      -AVAILABILITY-ZONE cannot be deleted if related to CTAG-POOL,DVS-SWITCH,GENERIC-VNF,PSERVER,VCE
    required:
    - availability-zone-name
    - hypervisor-type
    properties:
      availability-zone-name:
        type: string
        description: Name of the availability zone.  Unique across a cloud region
      hypervisor-type:
        type: string
        description: Type of hypervisor.  Source of truth should define valid values.
      operational-status:
        type: string
        description: State that indicates whether the availability zone should be used, etc.  Source of truth should define valid values.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  availability-zones:
    description: |
      Collection of availability zones
    properties:
      availability-zone:
        type: array
        items:          
          $ref: "#/getDefinitions/availability-zone"
  az-and-dvs-switches:
    properties:
      dvs-switches:
        type: object
        $ref: "#/getDefinitions/dvs-switches"
      availability-zone:
        type: object
        $ref: "#/getDefinitions/availability-zone"
  business:
    description: |
      Namespace for business related constructs
    properties:
      connectors:
        type: array
        items:
          $ref: "#/getDefinitions/connector"
      customers:
        type: array
        items:
          $ref: "#/getDefinitions/customer"
      lines-of-business:
        type: array
        items:
          $ref: "#/getDefinitions/line-of-business"
      owning-entities:
        type: array
        items:
          $ref: "#/getDefinitions/owning-entity"
      platforms:
        type: array
        items:
          $ref: "#/getDefinitions/platform"
      projects:
        type: array
        items:
          $ref: "#/getDefinitions/project"
      sp-partners:
        type: array
        items:
          $ref: "#/getDefinitions/sp-partner"
  class-of-service:
    description: |
      ###### Related Nodes
      - TO site-pair (PARENT of class-of-service, class-of-service BelongsTo site-pair, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this CLASS-OF-SERVICE is DELETED also
    required:
    - cos
    properties:
      cos:
        type: string
        description: unique identifier of probe
      probe-id:
        type: string
        description: identifier of probe
      probe-type:
        type: string
        description: type of probe
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  classes-of-service:
    description: |
      class-of-service of probe
    properties:
      class-of-service:
        type: array
        items:          
          $ref: "#/getDefinitions/class-of-service"
  cloud-infrastructure:
    description: |
      Namespace for cloud infrastructure.
    properties:
      complexes:
        type: array
        items:
          $ref: "#/getDefinitions/complex"
      cloud-regions:
        type: array
        items:
          $ref: "#/getDefinitions/cloud-region"
      network-profiles:
        type: array
        items:
          $ref: "#/getDefinitions/network-profile"
      pservers:
        type: array
        items:
          $ref: "#/getDefinitions/pserver"
      virtual-data-centers:
        type: array
        items:
          $ref: "#/getDefinitions/virtual-data-center"
      operational-environments:
        type: array
        items:
          $ref: "#/getDefinitions/operational-environment"
      network-technologies:
        type: array
        items:
          $ref: "#/getDefinitions/network-technology"
  cloud-region:
    description: |
      cloud-region designates an installation of a cloud cluster or region or instantiation. In AT&Ts AIC cloud, this could be an LCP or DCP. Cloud regions are uniquely identified by a composite key, cloud-owner + cloud-region-id. The format of the cloud-owner is vendor-cloudname and we will use att-aic for AT&T's AIC.
      ###### Related Nodes
      - TO complex( cloud-region LocatedIn complex, MANY2ONE)
      - TO instance-group( cloud-region Uses instance-group, ONE2MANY)
      - TO l3-network( cloud-region Uses l3-network, MANY2MANY)
      - TO network-technology( cloud-region Uses network-technology, MANY2MANY)
      - TO zone( cloud-region LocatedIn zone, MANY2ONE)
      - FROM availability-zone (CHILD of cloud-region, availability-zone BelongsTo cloud-region, MANY2ONE)(1)
      - FROM dvs-switch (CHILD of cloud-region, dvs-switch BelongsTo cloud-region, MANY2ONE)
      - FROM esr-system-info (CHILD of cloud-region, esr-system-info BelongsTo cloud-region, MANY2ONE)(1)
      - FROM flavor (CHILD of cloud-region, flavor BelongsTo cloud-region, MANY2ONE)
      - FROM generic-vnf( generic-vnf LocatedIn cloud-region, MANY2ONE)
      - FROM group-assignment (CHILD of cloud-region, group-assignment BelongsTo cloud-region, MANY2ONE)
      - FROM hpa-capability (CHILD of cloud-region, hpa-capability BelongsTo cloud-region, MANY2ONE)
      - FROM image (CHILD of cloud-region, image BelongsTo cloud-region, MANY2ONE)
      - FROM logical-link( logical-link LocatedIn cloud-region, MANY2MANY)
      - FROM oam-network (CHILD of cloud-region, oam-network BelongsTo cloud-region, MANY2ONE)
      - FROM pserver( pserver LocatedIn cloud-region, MANY2ONE)
      - FROM snapshot (CHILD of cloud-region, snapshot BelongsTo cloud-region, MANY2ONE)
      - FROM tenant (CHILD of cloud-region, tenant BelongsTo cloud-region, MANY2ONE)
      - FROM vip-ipv4-address-list (CHILD of cloud-region, vip-ipv4-address-list BelongsTo cloud-region, MANY2ONE)
      - FROM vip-ipv6-address-list (CHILD of cloud-region, vip-ipv6-address-list BelongsTo cloud-region, MANY2ONE)
      - FROM vlan-tag( vlan-tag BelongsTo cloud-region, MANY2ONE)
      - FROM volume-group (CHILD of cloud-region, volume-group BelongsTo cloud-region, MANY2ONE)

      -(1) IF this CLOUD-REGION node is deleted, this FROM node is DELETED also
      -CLOUD-REGION cannot be deleted if related to DVS-SWITCH,FLAVOR,GROUP-ASSIGNMENT,HPA-CAPABILITY,IMAGE,OAM-NETWORK,SNAPSHOT,TENANT,VIP-IPV4-ADDRESS-LIST,VIP-IPV6-ADDRESS-LIST,VOLUME-GROUP
    required:
    - cloud-owner
    - cloud-region-id
    - orchestration-disabled
    - in-maint
    properties:
      cloud-owner:
        type: string
        description: Identifies the vendor and cloud name. First part of composite key should be formatted as vendor-cloudname
      cloud-region-id:
        type: string
        description: Identifier used by the vendor for the region. Second part of composite key
      cloud-type:
        type: string
        description: Type of the cloud (e.g., openstack)
      owner-defined-type:
        type: string
        description: Cloud-owner defined type indicator (e.g., dcp, lcp)
      cloud-region-version:
        type: string
        description: Software version employed at the site.  NOTE - THIS FIELD IS NOT KEPT UP TO DATE.
      identity-url:
        type: string
        description: URL of the keystone identity service
      cloud-zone:
        type: string
        description: Zone where the cloud is homed.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED.
      complex-name:
        type: string
        description: complex name for cloud-region instance.  NOTE - THIS FIELD IS NOT CORRECTLY POPULATED.
      sriov-automation:
        type: string
        description: Whether the cloud region supports (true) or does not support (false) SR-IOV automation.
      cloud-extra-info:
        type: string
        description: ESR inputs extra information about the VIM or Cloud which will be decoded by MultiVIM.
      upgrade-cycle:
        type: string
        description: Upgrade cycle for the cloud region. For AIC regions upgrade cycle is designated by A,B,C etc.
      orchestration-disabled:
        type: boolean
        description: Used to indicate whether orchestration is enabled for this cloud-region.
      in-maint:
        type: boolean
        description: Used to indicate whether or not cloud-region object is in maintenance mode.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      volume-groups:
        type: array
        items:
          $ref: "#/getDefinitions/volume-group"
      tenants:
        type: array
        items:
          $ref: "#/getDefinitions/tenant"
      flavors:
        type: array
        items:
          $ref: "#/getDefinitions/flavor"
      group-assignments:
        type: array
        items:
          $ref: "#/getDefinitions/group-assignment"
      snapshots:
        type: array
        items:
          $ref: "#/getDefinitions/snapshot"
      images:
        type: array
        items:
          $ref: "#/getDefinitions/image"
      dvs-switches:
        type: array
        items:
          $ref: "#/getDefinitions/dvs-switch"
      oam-networks:
        type: array
        items:
          $ref: "#/getDefinitions/oam-network"
      availability-zones:
        type: array
        items:
          $ref: "#/getDefinitions/availability-zone"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      vip-ipv4-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/vip-ipv4-address-list"
      vip-ipv6-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/vip-ipv6-address-list"
      hpa-capabilities:
        type: array
        items:
          $ref: "#/getDefinitions/hpa-capability"
        description: List of cloud-region specific HPA Capabilities
      esr-system-info-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-system-info"
  cloud-regions:
    properties:
      cloud-region:
        type: array
        items:          
          $ref: "#/getDefinitions/cloud-region"
  collection:
    description: |
      represents the collection resource in the TOSCA model
      ###### Related Nodes
      - FROM instance-group( instance-group BelongsTo collection, ONE2ONE)
      - FROM service-instance( service-instance ComposedOf collection, ONE2ONE)
    required:
    - collection-id
    properties:
      collection-id:
        type: string
        description: Collection Object UUID
      model-invariant-id:
        type: string
        description: ASDC model id for this resource or service model
        also requires: model-version-id
      model-version-id:
        type: string
        description: Model Version
        also requires: model-invariant-id
      collection-name:
        type: string
        description: collection name
      collection-type:
        type: string
        description: Collection type
      collection-role:
        type: string
        description: Collection Role
      collection-function:
        type: string
        description: Collection function
      orchestration-status:
        type: string
        description: orchestration status
      collection-customization-id:
        type: string
        description: Captures the id of all the configuration used to customize the resource for the service
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  collections:
    properties:
      collection:
        type: array
        items:          
          $ref: "#/getDefinitions/collection"
  common:
    description: |
      Namespace for common inventory resources.
    properties:
      contacts:
        type: array
        items:
          $ref: "#/getDefinitions/contact"
  complex:
    description: |
      Collection of physical locations that can house cloud-regions.
      ###### Related Nodes
      - TO l3-network( complex Uses l3-network, MANY2MANY)
      - FROM availability-zone( availability-zone LocatedIn complex, MANY2ONE)
      - FROM cloud-region( cloud-region LocatedIn complex, MANY2ONE)
      - FROM ctag-pool (CHILD of complex, ctag-pool BelongsTo complex, MANY2ONE)(1)
      - FROM generic-vnf( generic-vnf LocatedIn complex, MANY2MANY)
      - FROM oam-network( oam-network AppliesTo complex, MANY2MANY)
      - FROM pnf( pnf LocatedIn complex, MANY2ONE)
      - FROM pserver( pserver LocatedIn complex, MANY2ONE)
      - FROM site-resource( site-resource Uses complex, MANY2MANY)
      For CCVPN Usecase
      - FROM vce( vce LocatedIn complex, MANY2MANY)
      - FROM volume-group( volume-group LocatedIn complex, MANY2ONE)
      - FROM vpls-pe( vpls-pe LocatedIn complex, MANY2ONE)
      - FROM zone( zone LocatedIn complex, MANY2ONE)

      -(1) IF this COMPLEX node is deleted, this FROM node is DELETED also
      -COMPLEX cannot be deleted if related to AVAILABILITY-ZONE,CLOUD-REGION,GENERIC-VNF,OAM-NETWORK,PNF,PSERVER,VCE,VOLUME-GROUP,VPLS-PE,ZONE
    required:
    - physical-location-id
    - physical-location-type
    - street1
    - city
    - postal-code
    - country
    - region
    properties:
      physical-location-id:
        type: string
        description: Unique identifier for physical location, e.g., CLLI
      data-center-code:
        type: string
        description: Data center code which can be an alternate way to identify a complex
      complex-name:
        type: string
        description: Gamma complex name for LCP instance.
      identity-url:
        type: string
        description: URL of the keystone identity service
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      physical-location-type:
        type: string
        description: Type, e.g., central office, data center.
      street1:
        type: string
      street2:
        type: string
      city:
        type: string
      state:
        type: string
      postal-code:
        type: string
      country:
        type: string
      region:
        type: string
      latitude:
        type: string
      longitude:
        type: string
      elevation:
        type: string
      lata:
        type: string
      ctag-pools:
        type: array
        items:
          $ref: "#/getDefinitions/ctag-pool"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  complexes:
    description: |
      Collection of physical locations that can house cloud-regions.
    properties:
      complex:
        type: array
        items:          
          $ref: "#/getDefinitions/complex"
  configuration:
    description: |
      Generic configuration object.
      ###### Related Nodes
      - TO allotted-resource( configuration Uses allotted-resource, ONE2ONE)(2)
      - TO configuration( configuration BindsTo configuration, ONE2ONE)
      - TO l-interface( configuration AppliesTo l-interface, ONE2MANY)
      - TO l3-network( configuration PartOf l3-network, MANY2MANY)
      - TO logical-link( configuration Uses logical-link, ONE2MANY)(2)
      - TO pnf( configuration AppliesTo pnf, MANY2MANY)
      - TO vnfc( configuration Uses vnfc, ONE2ONE)(4)
      - TO vpn-binding( configuration Uses vpn-binding, MANY2ONE)
      - TO vrf( configuration Uses vrf, ONE2MANY)
      A Configuration uses VRFs
      - FROM configuration( configuration BindsTo configuration, ONE2ONE)
      - FROM evc (CHILD of configuration, evc BelongsTo configuration, ONE2ONE)(1)
      - FROM forwarder( forwarder Uses configuration, ONE2ONE)(3)
      - FROM forwarder-evc (CHILD of configuration, forwarder-evc BelongsTo configuration, ONE2ONE)(1)
      - FROM forwarding-path( forwarding-path Uses configuration, ONE2ONE)(3)
      - FROM generic-vnf( generic-vnf Uses configuration, ONE2MANY)(3)
      - FROM metadatum (CHILD of configuration, metadatum BelongsTo configuration, MANY2ONE)(1)
      - FROM service-instance( service-instance Uses configuration, ONE2MANY)
      - FROM service-instance( service-instance ComposedOf configuration, MANY2MANY)

      -(1) IF this CONFIGURATION node is deleted, this FROM node is DELETED also
      -(2) IF this CONFIGURATION node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this CONFIGURATION is DELETED also
      -(4) IF this TO node is deleted, this CONFIGURATION is DELETED also
    required:
    - configuration-id
    - configuration-type
    properties:
      configuration-id:
        type: string
        description: UUID assigned to configuration.
      management-option:
        type: string
        description: Indicates the entity that will manage this feature. Could be an organization or the name of the application as well.
      configuration-name:
        type: string
        description: Name of the configuration.
      configuration-type:
        type: string
        description: port-mirroring-configuration.
      configuration-sub-type:
        type: string
        description: vprobe, pprobe.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      orchestration-status:
        type: string
        description: Orchestration status of the configuration.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.
      configuration-selflink:
        type: string
        description: URL to endpoint where AAI can get more details from SDN-GC.
      model-customization-id:
        type: string
        description: id of  the configuration used to customize the resource
      tunnel-bandwidth:
        type: string
        description: DHV Site Effective Bandwidth
      vendor-allowed-max-bandwidth:
        type: string
        description: Velocloud Nominal Throughput - VNT
      config-policy-name:
        type: string
        description: Used to capture the name of the fabric configuration policy that was used to generate the payload sent to PINC for fabric configuration.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/getDefinitions/metadatum"
      forwarder-evcs:
        type: array
        items:
          $ref: "#/getDefinitions/forwarder-evc"
      evcs:
        type: array
        items:
          $ref: "#/getDefinitions/evc"
  configurations:
    description: |
      Collection of configurations
    properties:
      configuration:
        type: array
        items:          
          $ref: "#/getDefinitions/configuration"
  connectivities:
    description: |
      Collection of connectivities
    properties:
      connectivity:
        type: array
        items:          
          $ref: "#/getDefinitions/connectivity"
  connectivity:
    description: |
      Instance of a connectivity
      ###### Related Nodes
      - TO ext-aai-network( connectivity BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( connectivity PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - TO vpn-binding( connectivity PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this CONNECTIVITY node is deleted, this TO node is DELETED also
    required:
    - connectivity-id
    properties:
      connectivity-id:
        type: string
        description: Uniquely identifies this connectivity by id
      bandwidth-profile-name:
        type: string
        description: Store the name of a bandwidth profile.
      vpn-type:
        type: string
        description: Store the type of a bandwidth profile.
      cir:
        type: string
        description: Store the CIR of this connectivity.
      eir:
        type: string
        description: Store the EIR of this connectivity.
      cbs:
        type: string
        description: Store the CBS of this connectivity.
      ebs:
        type: string
        description: Store the EBS of this connectivity.
      color-aware:
        type: string
        description: Store the color-awareness of this connectivity.
      coupling-flag:
        type: string
        description: Store the coupling flag of this connectivity.
      etht-svc-name:
        type: string
        description: The ethernet service name for this connectivity.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this connectivity.
      access-client-id:
        type: string
        description: Store the id of the access client of this connectivity.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this connectivity.
      access-node-id:
        type: string
        description: Store the id of the access node of this connectivity.
      access-ltp-id:
        type: string
        description: Store the id of the access ltp of this connectivity.
      connectivity-selflink:
        type: string
        description: Store the link to get more information for this connectivity.
      cvlan:
        type: string
        description: Store the cvlan for this connectivity.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  connector:
    description: |
      Collection of resource instances used to connect a variety of disparate inventory widgets
      ###### Related Nodes
      - TO virtual-data-center( connector LocatedIn virtual-data-center, MANY2MANY)
      - FROM metadatum (CHILD of connector, metadatum BelongsTo connector, MANY2ONE)(1)
      - FROM service-instance( service-instance Uses connector, MANY2MANY)

      -(1) IF this CONNECTOR node is deleted, this FROM node is DELETED also
    required:
    - resource-instance-id
    properties:
      resource-instance-id:
        type: string
        description: Unique id of resource instance.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/getDefinitions/metadatum"
  connectors:
    description: |
      Collection of resource instances used to connect a variety of disparate inventory widgets
    properties:
      connector:
        type: array
        items:          
          $ref: "#/getDefinitions/connector"
  constrained-element-set:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO model-constraint (PARENT of constrained-element-set, constrained-element-set BelongsTo model-constraint, MANY2ONE)(4)
      - TO model-element (PARENT of constrained-element-set, constrained-element-set BelongsTo model-element, MANY2ONE)(4)
      - FROM element-choice-set (CHILD of constrained-element-set, element-choice-set BelongsTo constrained-element-set, MANY2ONE)(1)

      -(1) IF this CONSTRAINED-ELEMENT-SET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this CONSTRAINED-ELEMENT-SET is DELETED also
    required:
    - constrained-element-set-uuid
    - constraint-type
    - check-type
    properties:
      constrained-element-set-uuid:
        type: string
      constraint-type:
        type: string
      check-type:
        type: string
      resource-version:
        type: string
      element-choice-sets:
        type: array
        items:
          $ref: "#/getDefinitions/element-choice-set"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  constrained-element-sets:
    properties:
      constrained-element-set:
        type: array
        items:          
          $ref: "#/getDefinitions/constrained-element-set"
  contact:
    description: |
      Contacts store the vendor information and have a relationship to the generic-vnf.  In 1902, this will be populated by SDN-GC
      ###### Related Nodes
      - TO generic-vnf( contact supports generic-vnf, MANY2MANY)
    required:
    - contact-name
    properties:
      contact-name:
        type: string
        description: Name of the contact
      contact-telephone:
        type: string
        description: Tel no. of contact
      contact-email:
        type: string
        description: e-mail of contact
      vendor-type:
        type: string
        description: NI (Network Integrator)SI (System Integrator) 3rd Party LCM
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  contacts:
    description: |
      Collection of contacts
    properties:
      contact:
        type: array
        items:          
          $ref: "#/getDefinitions/contact"
  cp:
    description: |
      point of attachment from services or resources to a virtual link or network.
      ###### Related Nodes
      - FROM l-interface( l-interface LinksTo cp, ONE2ONE)
      - FROM l3-interface-ipv4-address-list (CHILD of cp, l3-interface-ipv4-address-list BelongsTo cp, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of cp, l3-interface-ipv6-address-list BelongsTo cp, MANY2ONE)(1)
      - FROM l3-network( l3-network LinksTo cp, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo cp, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM vip-ipv4-address-list( vip-ipv4-address-list Uses cp, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list Uses cp, MANY2MANY)
      - FROM vlan-tag( vlan-tag Uses cp, MANY2MANY)
      - FROM vnfc (PARENT of cp, vnfc BelongsTo cp, ONE2MANY)
      cp is child of vnfc(3)

      -(1) IF this CP node is deleted, this FROM node is DELETED also
      -(3) IF this FROM node is deleted, this CP is DELETED also
    required:
    - cp-instance-id
    properties:
      cp-instance-id:
        type: string
        description: Unique ID of the connection point.
      port-id:
        type: integer
        format: int32
        description: port index to represent multiple CPs on VNFC connected to same network.
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
  cps:
    description: |
      Collection of connection points.
    properties:
      cp:
        type: array
        items:          
          $ref: "#/getDefinitions/cp"
  ctag-assignment:
    description: |
      ###### Related Nodes
      - TO l3-network (PARENT of ctag-assignment, ctag-assignment BelongsTo l3-network, MANY2ONE)(4)
      - FROM service-instance( service-instance Uses ctag-assignment, ONE2MANY)

      -(4) IF this TO node is deleted, this CTAG-ASSIGNMENT is DELETED also
    required:
    - vlan-id-inner
    properties:
      vlan-id-inner:
        type: integer
        format: int64
        description: id.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  ctag-assignments:
    properties:
      ctag-assignment:
        type: array
        items:          
          $ref: "#/getDefinitions/ctag-assignment"
  ctag-pool:
    description: |
      A collection of C tags (vlan tags) grouped for a specific purpose.
      ###### Related Nodes
      - TO availability-zone( ctag-pool AppliesTo availability-zone, MANY2MANY)
      - TO complex (PARENT of ctag-pool, ctag-pool BelongsTo complex, MANY2ONE)(4)
      - FROM generic-vnf( generic-vnf Uses ctag-pool, MANY2MANY)
      - FROM vpls-pe( vpls-pe Uses ctag-pool, MANY2MANY)

      -(4) IF this TO node is deleted, this CTAG-POOL is DELETED also
    required:
    - target-pe
    - availability-zone-name
    - ctag-pool-purpose
    properties:
      target-pe:
        type: string
        description: The Target provider edge router
      availability-zone-name:
        type: string
        description: Name of the availability zone
      ctag-pool-purpose:
        type: string
        description: Describes what the intended purpose of this pool is.
      ctag-values:
        type: string
        description: Comma separated list of ctags
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  ctag-pools:
    properties:
      ctag-pool:
        type: array
        items:          
          $ref: "#/getDefinitions/ctag-pool"
  customer:
    description: |
      customer identifiers to provide linkage back to BSS information.
      ###### Related Nodes
      - FROM service-subscription (CHILD of customer, service-subscription BelongsTo customer, MANY2ONE)(1)
      - FROM vpn-binding( vpn-binding Uses customer, MANY2MANY)

      -(1) IF this CUSTOMER node is deleted, this FROM node is DELETED also
    required:
    - global-customer-id
    - subscriber-name
    - subscriber-type
    properties:
      global-customer-id:
        type: string
        description: Global customer id used across ONAP to uniquely identify customer.
      subscriber-name:
        type: string
        description: Subscriber name, an alternate way to retrieve a customer.
      subscriber-type:
        type: string
        description: Subscriber type, a way to provide VID with only the INFRA customers.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      service-subscriptions:
        type: array
        items:
          $ref: "#/getDefinitions/service-subscription"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  customers:
    description: |
      Collection of customer identifiers to provide linkage back to BSS information.
    properties:
      customer:
        type: array
        items:          
          $ref: "#/getDefinitions/customer"
  cvlan-tag-entry:
    required:
    - cvlan-tag
    properties:
      cvlan-tag:
        type: integer
        format: int64
        description: See mis-na-virtualization-platform.yang
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  cvlan-tags:
    properties:
      cvlan-tag-entry:
        type: array
        items:          
          $ref: "#/getDefinitions/cvlan-tag-entry"
  device:
    description: |
      Instance of a device
      ###### Related Nodes
      - TO ext-aai-network( device BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO generic-vnf( device Uses generic-vnf, ONE2MANY)
      For CCVPN Usecase
      - TO service-instance( device PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this DEVICE node is deleted, this TO node is DELETED also
    required:
    - device-id
    properties:
      device-id:
        type: string
        description: Uniquely identifies this device by id
      esn:
        type: string
        description: Store the esn of this device.
      device-name:
        type: string
        description: Store the name of this device.
      description:
        type: string
        description: Store the description of this device.
      vendor:
        type: string
        description: Store the vendor of this device.
      class:
        type: string
        description: Store the class of this device.
      type:
        type: string
        description: Store the type of this device.
      version:
        type: string
        description: Store the version of this device.
      system-ip:
        type: string
        description: Store the system-ip of this device.
      system-ipv4:
        type: string
        description: Store the system-ipv4 of this device.
      system-ipv6:
        type: string
        description: Store the system-ipv6 of this device.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  devices:
    description: |
      Collection of devices
    properties:
      device:
        type: array
        items:          
          $ref: "#/getDefinitions/device"
  dhcp-service:
    description: |
      Instance of a dhcp-service
      ###### Related Nodes
      - FROM lan-port-config (PARENT of dhcp-service, lan-port-config Uses dhcp-service, ONE2MANY)
      For CCVPN Usecase(3)

      -(3) IF this FROM node is deleted, this DHCP-SERVICE is DELETED also
      -DHCP-SERVICE cannot be deleted if related to LAN-PORT-CONFIG
    required:
    - dhcp-service-id
    properties:
      dhcp-service-id:
        type: string
        description: Uniquely identifies this dhcp-service by id
      server-ipv4-address:
        type: string
        description: Store the server-ip4-address of this dhcp-service.
      server-ipv6-address:
        type: string
        description: Store the server-ipv6-address of this dhcp-service.
      service-enable:
        type: string
        description: Store the service-enable of this dhcp-service.
      dhcp-service-type:
        type: string
        description: Store the dhcp-service-type of this dhcp-service.
      lease-time:
        type: string
        description: Store the lease-time of this dhcp-service.
      domain-name:
        type: string
        description: Store the domain-name of this dhcp-service.
      dns:
        type: string
        description: Store the dns of this dhcp-service.
      ntp-primary:
        type: string
        description: Store the ntp-primary of this dhcp-service.
      ntp-secondary:
        type: string
        description: Store the ntp-secondary of this dhcp-service.
      nbns:
        type: string
        description: Store the nbns of this dhcp-service.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  dhcp-services:
    description: |
      Collection of dhcp-services
    properties:
      dhcp-service:
        type: array
        items:          
          $ref: "#/getDefinitions/dhcp-service"
  dvs-switch:
    description: |
      Digital virtual switch metadata, used by SDN-C to configure VCEs.  A&AI needs to receive this data from the PO deployment team and administer it using the provisioningTool.sh into A&AI. 
      ###### Related Nodes
      - TO availability-zone( dvs-switch AppliesTo availability-zone, MANY2MANY)
      - TO cloud-region (PARENT of dvs-switch, dvs-switch BelongsTo cloud-region, MANY2ONE)
    required:
    - switch-name
    - vcenter-url
    properties:
      switch-name:
        type: string
        description: DVS switch name
      vcenter-url:
        type: string
        description: URL used to reach the vcenter
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  dvs-switches:
    description: |
      Collection of digital virtual switch metadata used for vmWare VCEs and GenericVnfs.
    properties:
      dvs-switch:
        type: array
        items:          
          $ref: "#/getDefinitions/dvs-switch"
  edge-prop-names:
    description: |
      Internal map to define the properties of an edge and interpret the map EdgeRules
    properties:
      edgeLabel:
        type: string
      direction:
        type: string
      multiplicityRule:
        type: string
      contains-other-v:
        type: string
      delete-other-v:
        type: string
      SVC-INFRA:
        type: string
      prevent-delete:
        type: string
      aai-uuid:
        type: string
  edge-tag-query-request:
    properties:
      edge-tag:
        type: string
      result-detail:
        type: string
      start-node-type:
        type: string
      start-node-filter:
        type: array
        items:          
          $ref: "#/getDefinitions/start-node-filter"
      include-node-filter:
        type: array
        items:          
          $ref: "#/getDefinitions/include-node-filter"
      secondary-filter:
        type: array
        items:          
          $ref: "#/getDefinitions/secondary-filter"
  edge-tag-query-result:
    properties:
      tagged-inventory-item-list:
        type: array
        items:          
          $ref: "#/getDefinitions/tagged-inventory-item-list"
  element-choice-set:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO constrained-element-set (PARENT of element-choice-set, element-choice-set BelongsTo constrained-element-set, MANY2ONE)(4)
      - FROM model-element (CHILD of element-choice-set, model-element BelongsTo element-choice-set, MANY2ONE)(1)

      -(1) IF this ELEMENT-CHOICE-SET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this ELEMENT-CHOICE-SET is DELETED also
    required:
    - element-choice-set-uuid
    - element-choice-set-name
    properties:
      element-choice-set-uuid:
        type: string
      element-choice-set-name:
        type: string
      cardinality:
        type: string
      resource-version:
        type: string
      model-elements:
        type: array
        items:
          $ref: "#/getDefinitions/model-element"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  element-choice-sets:
    properties:
      element-choice-set:
        type: array
        items:          
          $ref: "#/getDefinitions/element-choice-set"
  entitlement:
    description: |
      Metadata for entitlement group.
      ###### Related Nodes
      - TO generic-vnf (PARENT of entitlement, entitlement BelongsTo generic-vnf, MANY2ONE)(4)
      - TO vce (PARENT of entitlement, entitlement BelongsTo vce, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this ENTITLEMENT is DELETED also
    required:
    - group-uuid
    - resource-uuid
    properties:
      group-uuid:
        type: string
        description: Unique ID for the entitlement group the resource comes from, should be uuid.
      resource-uuid:
        type: string
        description: Unique ID of an entitlement resource. 
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  entitlements:
    description: |
      Entitlements, keyed by group-uuid and resource-uuid, related to license management
    properties:
      entitlement:
        type: array
        items:          
          $ref: "#/getDefinitions/entitlement"
  esr-ems:
    description: |
      Persist EMS address information used by EMS driver.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-ems, esr-system-info BelongsTo esr-ems, MANY2ONE)(1)

      -(1) IF this ESR-EMS node is deleted, this FROM node is DELETED also
    required:
    - ems-id
    properties:
      ems-id:
        type: string
        description: Unique ID of EMS.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  esr-ems-list:
    properties:
      esr-ems:
        type: array
        items:          
          $ref: "#/getDefinitions/esr-ems"
  esr-nfvo:
    description: |
      Persist NFVO address information used by VF-C.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-nfvo, esr-system-info BelongsTo esr-nfvo, ONE2ONE)(1)

      -(1) IF this ESR-NFVO node is deleted, this FROM node is DELETED also
    required:
    - nfvo-id
    properties:
      nfvo-id:
        type: string
        description: Unique ID of nfvo.
      api-root:
        type: string
        description: indecate the api-root.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  esr-nfvo-list:
    properties:
      esr-nfvo:
        type: array
        items:          
          $ref: "#/getDefinitions/esr-nfvo"
  esr-system-info:
    description: |
      Persist common address information of external systems.
      ###### Related Nodes
      - TO cloud-region (PARENT of esr-system-info, esr-system-info BelongsTo cloud-region, MANY2ONE)(4)
      - TO esr-ems (PARENT of esr-system-info, esr-system-info BelongsTo esr-ems, MANY2ONE)(4)
      - TO esr-nfvo (PARENT of esr-system-info, esr-system-info BelongsTo esr-nfvo, ONE2ONE)(4)
      - TO esr-thirdparty-sdnc (PARENT of esr-system-info, esr-system-info BelongsTo esr-thirdparty-sdnc, ONE2ONE)(4)
      - TO esr-vnfm (PARENT of esr-system-info, esr-system-info BelongsTo esr-vnfm, ONE2ONE)(4)
      - FROM ext-aai-network (PARENT of esr-system-info, ext-aai-network Uses esr-system-info, ONE2MANY)
      For CCVPN Usecase(3)

      -(3) IF this FROM node is deleted, this ESR-SYSTEM-INFO is DELETED also
      -(4) IF this TO node is deleted, this ESR-SYSTEM-INFO is DELETED also
      -ESR-SYSTEM-INFO cannot be deleted if related to EXT-AAI-NETWORK
    required:
    - esr-system-info-id
    - user-name
    - password
    - system-type
    properties:
      esr-system-info-id:
        type: string
        description: Unique ID of esr system info.
      system-name:
        type: string
        description: name of external system.
      type:
        type: string
        description: type of external systems.
      vendor:
        type: string
        description: vendor of external systems.
      version:
        type: string
        description: version of external systems.
      service-url:
        type: string
        description: url used to access external systems.
      user-name:
        type: string
        description: username used to access external systems.
      password:
        type: string
        description: password used to access external systems.
      system-type:
        type: string
        description: it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm.
      protocol:
        type: string
        description: protocol of third party SDNC, for example netconf/snmp.
      ssl-cacert:
        type: string
        description: ca file content if enabled ssl on auth-url.
      ssl-insecure:
        type: boolean
        description: Whether to verify VIM's certificate.
      ip-address:
        type: string
        description: service IP of ftp server.
      port:
        type: string
        description: service port of ftp server.
      cloud-domain:
        type: string
        description: domain info for authentication.
      default-tenant:
        type: string
        description: default tenant of VIM.
      passive:
        type: boolean
        description: ftp passive mode or not.
      remote-path:
        type: string
        description: resource or performance data file path.
      system-status:
        type: string
        description: the status of external system.
      openstack-region-id:
        type: string
        description: OpenStack region ID used by MultiCloud plugin to interact with an OpenStack instance.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  esr-system-info-list:
    description: |
      Collection of persistent block-level external system auth info.
    properties:
      esr-system-info:
        type: array
        items:          
          $ref: "#/getDefinitions/esr-system-info"
  esr-thirdparty-sdnc:
    description: |
      Persist SDNC address information used by ONAP SDNC.
      ###### Related Nodes
      - TO pnf( esr-thirdparty-sdnc AppliesTo pnf, ONE2MANY)
      - FROM esr-system-info (CHILD of esr-thirdparty-sdnc, esr-system-info BelongsTo esr-thirdparty-sdnc, ONE2ONE)(1)

      -(1) IF this ESR-THIRDPARTY-SDNC node is deleted, this FROM node is DELETED also
    required:
    - thirdparty-sdnc-id
    properties:
      thirdparty-sdnc-id:
        type: string
        description: Unique ID of SDNC.
      location:
        type: string
        description: used for DC type to indicate the location of SDNC, such as Core or Edge.
      product-name:
        type: string
        description: password used to access SDNC server.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  esr-thirdparty-sdnc-list:
    properties:
      esr-thirdparty-sdnc:
        type: array
        items:          
          $ref: "#/getDefinitions/esr-thirdparty-sdnc"
  esr-vnfm:
    description: |
      Persist VNFM address information used by VF-C.
      ###### Related Nodes
      - FROM esr-system-info (CHILD of esr-vnfm, esr-system-info BelongsTo esr-vnfm, ONE2ONE)(1)
      - FROM generic-vnf( generic-vnf DependsOn esr-vnfm, MANY2ONE)

      -(1) IF this ESR-VNFM node is deleted, this FROM node is DELETED also
    required:
    - vnfm-id
    properties:
      vnfm-id:
        type: string
        description: Unique ID of VNFM.
      vim-id:
        type: string
        description: indecate the VIM to deploy VNF.
      certificate-url:
        type: string
        description: certificate url of VNFM.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  esr-vnfm-list:
    properties:
      esr-vnfm:
        type: array
        items:          
          $ref: "#/getDefinitions/esr-vnfm"
  evc:
    description: |
      evc object is an optional child object of the Configuration object.
      ###### Related Nodes
      - TO configuration (PARENT of evc, evc BelongsTo configuration, ONE2ONE)(4)

      -(4) IF this TO node is deleted, this EVC is DELETED also
    required:
    - evc-id
    properties:
      evc-id:
        type: string
        description: Unique/key field for the evc object
      forwarding-path-topology:
        type: string
        description: Point-to-Point, Multi-Point
      cir-value:
        type: string
        description: Commited Information Rate
      cir-units:
        type: string
        description: CIR units
      connection-diversity-group-id:
        type: string
        description: Diversity Group ID
      service-hours:
        type: string
        description: formerly Performance Group
      esp-evc-circuit-id:
        type: string
        description: EVC Circuit ID of ESP EVC
      esp-evc-cir-value:
        type: string
        description: Committed Information Rate (For ESP)
      esp-evc-cir-units:
        type: string
        description: CIR units (For ESP)
      esp-itu-code:
        type: string
        description: Identifies ESP
      collector-pop-clli:
        type: string
        description: Collector POP CLLI (from the hostname of the access pnf)
      inter-connect-type-ingress:
        type: string
        description: Interconnect type on ingress side of EVC.
      tagmode-access-ingress:
        type: string
        description: tagode for collector side of EVC
      tagmode-access-egress:
        type: string
        description: tagMode for network side of EVC
      product-entry-id:
        type: string
        description: Product ID
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  evcs:
    properties:
      evc:
        type: array
        items:          
          $ref: "#/getDefinitions/evc"
  ext-aai-network:
    description: |
      Refer to an external AAI in another ONAP.
      ###### Related Nodes
      - TO esr-system-info (PARENT of ext-aai-network, ext-aai-network Uses esr-system-info, ONE2MANY)
      For CCVPN Usecase(2)
      - FROM connectivity( connectivity BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM device( device BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM lan-port-config( lan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM logical-link( logical-link BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM network-resource( network-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM pnf( pnf BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM sdwan-vpn( sdwan-vpn BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM site-resource( site-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM vpn-binding( vpn-binding BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)
      - FROM wan-port-config( wan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(3)

      -(2) IF this EXT-AAI-NETWORK node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this EXT-AAI-NETWORK is DELETED also
      -EXT-AAI-NETWORK cannot be deleted if related to CONNECTIVITY,DEVICE,LAN-PORT-CONFIG,LOGICAL-LINK,NETWORK-RESOURCE,PNF,SDWAN-VPN,SITE-RESOURCE,VPN-BINDING,WAN-PORT-CONFIG
    required:
    - aai-id
    properties:
      aai-id:
        type: string
        description: Unique ID of the referenced AAI.
      schema-version:
        type: string
        description: Schema version of the referenced AAI.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      esr-system-info:
        type: object
        $ref: "#/getDefinitions/esr-system-info"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  ext-aai-networks:
    properties:
      ext-aai-network:
        type: array
        items:          
          $ref: "#/getDefinitions/ext-aai-network"
  external-system:
    description: |
      Namespace for external system.
    properties:
      esr-ems-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-ems"
      esr-vnfm-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-vnfm"
      esr-nfvo-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-nfvo"
      esr-thirdparty-sdnc-list:
        type: array
        items:
          $ref: "#/getDefinitions/esr-thirdparty-sdnc"
  extra-properties:
    description: |
      Extra properties for inventory item for response list
    properties:
      extra-property:
        type: array
        items:          
          $ref: "#/getDefinitions/extra-property"
  extra-property:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  flavor:
    description: |
      Openstack flavor.
      ###### Related Nodes
      - TO cloud-region (PARENT of flavor, flavor BelongsTo cloud-region, MANY2ONE)
      - TO pserver( flavor CanBeInstantiatedIn pserver, MANY2MANY)
      HPA Capacity getting the compute nodes from given flavor
      - FROM hpa-capability (CHILD of flavor, hpa-capability BelongsTo flavor, MANY2ONE)
      - FROM vserver( vserver Uses flavor, MANY2ONE)

      -FLAVOR cannot be deleted if related to HPA-CAPABILITY,VSERVER
    required:
    - flavor-id
    - flavor-name
    - flavor-selflink
    properties:
      flavor-id:
        type: string
        description: Flavor id, expected to be unique across cloud-region.
      flavor-name:
        type: string
        description: Cloud Region Flavor name
      flavor-vcpus:
        type: integer
        format: int32
        description: Number of CPUs
      flavor-ram:
        type: integer
        format: int32
        description: Amount of memory
      flavor-disk:
        type: integer
        format: int32
        description: Disk space
      flavor-ephemeral:
        type: integer
        format: int32
        description: Amount of ephemeral disk space
      flavor-swap:
        type: string
        description: amount of swap space allocation
      flavor-is-public:
        type: boolean
        description: whether flavor is available to all users or private to the tenant it was created in.
      flavor-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      flavor-disabled:
        type: boolean
        description: Boolean as to whether this flavor is no longer enabled
      hpa-capabilities:
        type: array
        items:
          $ref: "#/getDefinitions/hpa-capability"
        description: List of flavor specific HPA Capabilities
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  flavors:
    description: |
      Collection of openstack flavors.
    properties:
      flavor:
        type: array
        items:          
          $ref: "#/getDefinitions/flavor"
  forwarder:
    description: |
      Entity describing a sequenced segment of forwarding path
      ###### Related Nodes
      - TO configuration( forwarder Uses configuration, ONE2ONE)(2)
      - TO forwarding-path (PARENT of forwarder, forwarder BelongsTo forwarding-path, MANY2ONE)(4)
      - TO generic-vnf( forwarder AppliesTo generic-vnf, MANY2MANY)
      Points to the generic-vnf(s) involved in this forwarding step.
      - TO l-interface( forwarder ForwardsTo l-interface, MANY2MANY)
      - TO lag-interface( forwarder ForwardsTo lag-interface, MANY2MANY)
      - TO p-interface( forwarder ForwardsTo p-interface, MANY2MANY)

      -(2) IF this FORWARDER node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDER is DELETED also
    required:
    - sequence
    properties:
      sequence:
        type: integer
        format: int32
        description: Unique ID of this segmentation
      forwarder-role:
        type: string
        description: ingress, intermediate, egress
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  forwarder-evc:
    description: |
      forwarder object is an optional child object of the Configuration object.
      ###### Related Nodes
      - TO configuration (PARENT of forwarder-evc, forwarder-evc BelongsTo configuration, ONE2ONE)(4)
      - FROM vlan-mapping (CHILD of forwarder-evc, vlan-mapping BelongsTo forwarder-evc, MANY2ONE)(1)

      -(1) IF this FORWARDER-EVC node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDER-EVC is DELETED also
    required:
    - forwarder-evc-id
    properties:
      forwarder-evc-id:
        type: string
        description: Key for forwarder-evc object
      circuit-id:
        type: string
        description: Circuit ID from customer/ESP/ingress end of EVC, or reference to beater circuit on gateway/network/egress end of EVC
      ivlan:
        type: string
        description: Internal VLAN.
      svlan:
        type: string
        description: SVLAN value for ingress of egress forwarder.
      cvlan:
        type: string
        description: CVLAN value for ingress of egress forwarder.
      vlan-mappings:
        type: array
        items:
          $ref: "#/getDefinitions/vlan-mapping"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
  forwarder-evcs:
    properties:
      forwarder-evc:
        type: array
        items:          
          $ref: "#/getDefinitions/forwarder-evc"
  forwarders:
    properties:
      forwarder:
        type: array
        items:          
          $ref: "#/getDefinitions/forwarder"
  forwarding-path:
    description: |
      Entity that describes the sequenced forwarding path between interfaces of services or resources
      ###### Related Nodes
      - TO configuration( forwarding-path Uses configuration, ONE2ONE)(2)
      - TO service-instance( forwarding-path AppliesTo service-instance, MANY2ONE)(4)
      - FROM forwarder (CHILD of forwarding-path, forwarder BelongsTo forwarding-path, MANY2ONE)(1)

      -(1) IF this FORWARDING-PATH node is deleted, this FROM node is DELETED also
      -(2) IF this FORWARDING-PATH node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this FORWARDING-PATH is DELETED also
    required:
    - forwarding-path-id
    - forwarding-path-name
    properties:
      forwarding-path-id:
        type: string
        description: Unique ID of this FP
      forwarding-path-name:
        type: string
        description: Name of the FP
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      resource-version:
        type: string
        description: Used for optimistic concurrency. Must be empty on create, valid on update and delete.
      selflink:
        type: string
        description: the self link for this FP
      forwarders:
        type: array
        items:
          $ref: "#/getDefinitions/forwarder"
  forwarding-paths:
    properties:
      forwarding-path:
        type: array
        items:          
          $ref: "#/getDefinitions/forwarding-path"
  generic-vnf:
    description: |
      General purpose VNF
      ###### Related Nodes
      - TO availability-zone( generic-vnf Uses availability-zone, MANY2MANY)
      - TO cloud-region( generic-vnf LocatedIn cloud-region, MANY2ONE)
      - TO complex( generic-vnf LocatedIn complex, MANY2MANY)
      - TO configuration( generic-vnf Uses configuration, ONE2MANY)(2)
      - TO ctag-pool( generic-vnf Uses ctag-pool, MANY2MANY)
      - TO esr-vnfm( generic-vnf DependsOn esr-vnfm, MANY2ONE)
      - TO instance-group( generic-vnf MemberOf instance-group, MANY2MANY)
      - TO instance-group( generic-vnf Uses instance-group, ONE2MANY)
      - TO ipsec-configuration( generic-vnf Uses ipsec-configuration, MANY2ONE)
      - TO l3-network( generic-vnf Uses l3-network, MANY2MANY)
      - TO nos-server( generic-vnf HostedOn nos-server, MANY2ONE)
      - TO pnf( generic-vnf HostedOn pnf, MANY2MANY)
      - TO pserver( generic-vnf HostedOn pserver, MANY2MANY)
      - TO tenant( generic-vnf BelongsTo tenant, MANY2ONE)
      - TO virtual-data-center( generic-vnf LocatedIn virtual-data-center, MANY2MANY)
      - TO vnf-image( generic-vnf Uses vnf-image, MANY2ONE)
      - TO volume-group( generic-vnf DependsOn volume-group, ONE2MANY)
      - TO vserver( generic-vnf HostedOn vserver, ONE2MANY)
      - FROM allotted-resource( allotted-resource PartOf generic-vnf, MANY2MANY)
      - FROM contact( contact supports generic-vnf, MANY2MANY)
      - FROM device( device Uses generic-vnf, ONE2MANY)
      For CCVPN Usecase
      - FROM entitlement (CHILD of generic-vnf, entitlement BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM forwarder( forwarder AppliesTo generic-vnf, MANY2MANY)
      Points to the generic-vnf(s) involved in this forwarding step.
      - FROM instance-group( instance-group BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM l-interface (CHILD of generic-vnf, l-interface BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM lag-interface (CHILD of generic-vnf, lag-interface BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM license (CHILD of generic-vnf, license BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM line-of-business( line-of-business Uses generic-vnf, MANY2MANY)
      - FROM logical-link( logical-link BridgedTo generic-vnf, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo generic-vnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM network-profile( network-profile AppliesTo generic-vnf, MANY2MANY)
      - FROM platform( platform Uses generic-vnf, MANY2MANY)
      - FROM service-instance( service-instance ComposedOf generic-vnf, ONE2MANY)
      - FROM site-pair-set( site-pair-set AppliesTo generic-vnf, MANY2MANY)
      - FROM vf-module (CHILD of generic-vnf, vf-module BelongsTo generic-vnf, MANY2ONE)(1)
      - FROM vnfc( vnfc BelongsTo generic-vnf, MANY2ONE)(1)

      -(1) IF this GENERIC-VNF node is deleted, this FROM node is DELETED also
      -(2) IF this GENERIC-VNF node is deleted, this TO node is DELETED also
    required:
    - vnf-id
    - vnf-type
    - in-maint
    - is-closed-loop-disabled
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
      vnf-instance-id:
        type: string
        description: vnf instance id.
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures.
      service-id:
        type: string
        description: Unique identifier of service, does not necessarily map to ASDC service models.  SOON TO BE DEPRECATED
      regional-resource-zone:
        type: string
        description: Regional way of organizing pservers, source of truth should define values
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.  Valid values are in-service-path and out-of-service-path.
      license-key:
        type: string
        description: OBSOLETE -  do not use
      equipment-role:
        type: string
        description: Client should send valid enumerated value
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, used by MSO.
      vnf-package-name:
        type: string
      vnf-discriptor-name:
        type: string
        description: vnf discriptor name
      job-id:
        type: string
        description: job id corresponding to vnf
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      management-option:
        type: string
        description: identifier of managed customer
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by generic-vnf.
      ipv4-loopback0-address:
        type: string
        description: v4 Loopback0 address
      nm-lan-v6-address:
        type: string
        description: v6 Loopback address
      management-v6-address:
        type: string
        description: v6 management address
      vcpu:
        type: integer
        format: int64
        description: number of vcpus ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
      vcpu-units:
        type: string
        description: units associated with vcpu, used for VNFs with no vservers/flavors, to be used only by uCPE
      vmemory:
        type: integer
        format: int64
        description: number of GB of memory ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only by uCPE
      vmemory-units:
        type: string
        description: units associated with vmemory, used for VNFs with no vservers/flavors, to be used only by uCPE
      vdisk:
        type: integer
        format: int64
        description: number of vdisks ordered for this instance of VNF, used for VNFs with no vservers/flavors, to be used only uCPE
      vdisk-units:
        type: string
        description: units associated with vdisk, used for VNFs with no vservers/flavors, to be used only by uCPE
      nshd:
        type: integer
        format: int64
        description: number of associated SHD in vnf.
      nvm:
        type: integer
        format: int64
        description: number of vms in vnf.
      nnet:
        type: integer
        format: int64
        description: number of network in vnf.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      is-closed-loop-disabled:
        type: boolean
        description: used to indicate whether closed loop function is enabled on this node
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      summary-status:
        type: string
        description: details regarding the generic-vnf operation, PLEASE DISCONTINUE USE OF THIS FIELD.
      encrypted-access-flag:
        type: boolean
        description: indicates whether generic-vnf access uses SSH
      entitlement-assignment-group-uuid:
        type: string
        description: UUID of the Entitlement group used for licensing VNFs, OBSOLETE -  See child relationships.
      entitlement-resource-uuid:
        type: string
        description: UUID of the specific entitlement resource.  OBSOLETE -  See child relationships.
      license-assignment-group-uuid:
        type: string
        description: UUID of the license assignment group.  OBSOLETE -  See child relationships.
      license-key-uuid:
        type: string
        description: UUID of the actual license resource.  OBSOLETE -  See child relationships.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      as-number:
        type: string
        description: as-number of the VNF
      regional-resource-subzone:
        type: string
        description: represents sub zone of the rr plane
      nf-type:
        type: string
        description: Generic description of the type of NF
      nf-function:
        type: string
        description: English description of Network function that the specific VNF deployment is providing
      nf-role:
        type: string
        description: role in the network that this model will be providing
      nf-naming-code:
        type: string
        description: string assigned to this model used for naming purposes
      selflink:
        type: string
        description: Path to the controller object.
      ipv4-oam-gateway-address:
        type: string
        description: Gateway address
      ipv4-oam-gateway-address-prefix-length:
        type: integer
        format: int32
        description: Prefix length for oam-address
      vlan-id-outer:
        type: integer
        format: int64
        description: Temporary location for S-TAG to get to VCE
      nm-profile-name:
        type: string
        description: Network Management profile of this VNF
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/l-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/lag-interface"
      vf-modules:
        type: array
        items:
          $ref: "#/getDefinitions/vf-module"
      licenses:
        type: array
        items:
          $ref: "#/getDefinitions/license"
      entitlements:
        type: array
        items:
          $ref: "#/getDefinitions/entitlement"
  generic-vnfs:
    description: |
      Collection of VNFs
    properties:
      generic-vnf:
        type: array
        items:          
          $ref: "#/getDefinitions/generic-vnf"
  group-assignment:
    description: |
      Openstack group-assignment used to store exclusivity groups (EG).
      ###### Related Nodes
      - TO cloud-region (PARENT of group-assignment, group-assignment BelongsTo cloud-region, MANY2ONE)
      - FROM pserver( pserver MemberOf group-assignment, MANY2ONE)
      - FROM tenant( tenant MemberOf group-assignment, MANY2MANY)
    required:
    - group-id
    - group-type
    - group-name
    properties:
      group-id:
        type: string
        description: Group id, expected to be unique across cloud-region.
      group-type:
        type: string
        description: Group type - the type of group this instance refers to
      group-name:
        type: string
        description: Group name - name assigned to the group
      group-description:
        type: string
        description: Group description - description of the group
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  group-assignments:
    description: |
      Collection of openstack group assignments
    properties:
      group-assignment:
        type: array
        items:          
          $ref: "#/getDefinitions/group-assignment"
  host-route:
    description: |
      ###### Related Nodes
      - TO subnet (PARENT of host-route, host-route BelongsTo subnet, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this HOST-ROUTE is DELETED also
    required:
    - host-route-id
    - route-prefix
    - next-hop
    properties:
      host-route-id:
        type: string
        description: host-route id
      route-prefix:
        type: string
        description: subnet prefix
      next-hop:
        type: string
        description: Could be ip-address, hostname, or service-instance
      next-hop-type:
        type: string
        description: Should be ip-address, hostname, or service-instance to match next-hop
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  host-routes:
    properties:
      host-route:
        type: array
        items:          
          $ref: "#/getDefinitions/host-route"
  hpa-capabilities:
    description: |
      Collection of HPA Capabilities
    properties:
      hpa-capability:
        type: array
        items:          
          $ref: "#/getDefinitions/hpa-capability"
  hpa-capability:
    description: |
      Represents a HPA capability
      ###### Related Nodes
      - TO cloud-region (PARENT of hpa-capability, hpa-capability BelongsTo cloud-region, MANY2ONE)
      - TO flavor (PARENT of hpa-capability, hpa-capability BelongsTo flavor, MANY2ONE)
      - FROM hpa-feature-attributes (CHILD of hpa-capability, hpa-feature-attributes BelongsTo hpa-capability, MANY2ONE)(1)

      -(1) IF this HPA-CAPABILITY node is deleted, this FROM node is DELETED also
    required:
    - hpa-capability-id
    - hpa-feature
    properties:
      hpa-capability-id:
        type: string
        description: UUID to uniquely identify a HPA capability
      hpa-feature:
        type: string
        description: Name of the HPACapability
      hpa-version:
        type: string
        description: HPA schema version
      architecture:
        type: string
        description: Hardware architecture
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      hpa-feature-attributes:
        type: array
        items:          
          $ref: "#/getDefinitions/hpa-feature-attributes"
  hpa-capacity:
    description: |
      HPA Capacity information for compute node
      ###### Related Nodes
      - TO pserver (PARENT of hpa-capacity, hpa-capacity BelongsTo pserver, MANY2ONE)
      HPA Capacity KV for given compute node(4)

      -(4) IF this TO node is deleted, this HPA-CAPACITY is DELETED also
    required:
    - hpa-capacity-key
    properties:
      hpa-capacity-key:
        type: string
        description: Composite key formed with hpaFeature and append list of hpaFeatureAttributes needed for capacity check
      hpa-capacity-value:
        type: string
        description: JSON string specifying the capacity (total,free), unit and metadata of the specific HPA attribute
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  hpa-feature-attributes:
    description: |
      HPA Capability Feature attributes
      ###### Related Nodes
      - TO hpa-capability (PARENT of hpa-feature-attributes, hpa-feature-attributes BelongsTo hpa-capability, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this HPA-FEATURE-ATTRIBUTES is DELETED also
    required:
    - hpa-attribute-key
    properties:
      hpa-attribute-key:
        type: string
        description: name of the specific HPA attribute
      hpa-attribute-value:
        type: string
        description: JSON string specifying the value, unit and type of the specific HPA attribute
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  image:
    description: |
      Openstack image.
      ###### Related Nodes
      - TO cloud-region (PARENT of image, image BelongsTo cloud-region, MANY2ONE)
      - FROM metadatum (CHILD of image, metadatum BelongsTo image, MANY2ONE)(1)
      - FROM vserver( vserver Uses image, MANY2ONE)

      -(1) IF this IMAGE node is deleted, this FROM node is DELETED also
      -IMAGE cannot be deleted if related to VSERVER
    required:
    - image-id
    - image-name
    - image-os-distro
    - image-os-version
    - image-selflink
    properties:
      image-id:
        type: string
        description: Image id, expected to be unique across cloud region
      image-name:
        type: string
        description: Image name
      image-architecture:
        type: string
        description: Operating system architecture.
      image-os-distro:
        type: string
        description: The common name of the operating system distribution in lowercase
      image-os-version:
        type: string
        description: The operating system version as specified by the distributor.
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      image-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/getDefinitions/metadatum"
  images:
    description: |
      Collectio of Openstack images.
    properties:
      image:
        type: array
        items:          
          $ref: "#/getDefinitions/image"
  include-node-filter:
    properties:
      include-node-type:
        type: string
  instance-filter:
    description: |
      InstanceFilter for performing a named-query or model query
  instance-filters:
    description: |
      InstanceFilters for performing a named-query or model query
    properties:
      instance-filter:
        type: array
        items:          
          $ref: "#/getDefinitions/instance-filter"
  instance-group:
    description: |
      General mechanism for grouping instances
      ###### Related Nodes
      - TO collection( instance-group BelongsTo collection, ONE2ONE)
      - TO generic-vnf( instance-group BelongsTo generic-vnf, MANY2ONE)(4)
      - TO model( instance-group Targets model, MANY2MANY)
      - FROM allotted-resource( allotted-resource MemberOf instance-group, MANY2MANY)
      - FROM cloud-region( cloud-region Uses instance-group, ONE2MANY)
      - FROM generic-vnf( generic-vnf MemberOf instance-group, MANY2MANY)
      - FROM generic-vnf( generic-vnf Uses instance-group, ONE2MANY)
      - FROM l-interface( l-interface MemberOf instance-group, MANY2MANY)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - FROM l3-network( l3-network MemberOf instance-group, MANY2MANY)
      - FROM pnf( pnf MemberOf instance-group, MANY2MANY)
      - FROM service-instance( service-instance Uses instance-group, ONE2MANY)
      MSO creates this edge on VNF Group Service creation
      - FROM service-instance( service-instance MemberOf instance-group, MANY2MANY)
      - FROM vip-ipv4-address-list( vip-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - FROM vnfc( vnfc MemberOf instance-group, MANY2MANY)

      -(4) IF this TO node is deleted, this INSTANCE-GROUP is DELETED also
    required:
    - id
    - instance-group-type
    properties:
      id:
        type: string
        description: Instance Group ID, UUID assigned to this instance.
      instance-group-role:
        type: string
        description: role of the instance group.
      model-invariant-id:
        type: string
        description: ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: ASDC model version uid for this resource model.
        also requires: model-invariant-id
      description:
        type: string
        description: Descriptive text to help identify the usage of this instance-group
      instance-group-type:
        type: string
        description: Only valid value today is lower case ha for high availability
      resource-version:
        type: string
        description: Concurrency value
      instance-group-name:
        type: string
        description: Instance-Group Name.
      instance-group-function:
        type: string
        description: Instance-Group Function
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  instance-groups:
    description: |
      Collection of openstack route table references
    properties:
      instance-group:
        type: array
        items:          
          $ref: "#/getDefinitions/instance-group"
  inventory:
    properties:
      cloud-infrastructure:
        type: object
        $ref: "#/getDefinitions/cloud-infrastructure"
      external-system:
        type: object
        $ref: "#/getDefinitions/external-system"
      business:
        type: object
        $ref: "#/getDefinitions/business"
      service-design-and-creation:
        type: object
        $ref: "#/getDefinitions/service-design-and-creation"
      network:
        type: object
        $ref: "#/getDefinitions/network"
      common:
        type: object
        $ref: "#/getDefinitions/common"
  inventory-item:
    properties:
      inventory-item-type:
        type: string
      inventory-item-link:
        type: string
      inventory-item-data:
        type: array
        items:          
          $ref: "#/getDefinitions/inventory-item-data"
      tagged-inventory-item-list:
        type: array
        items:          
          $ref: "#/getDefinitions/tagged-inventory-item-list"
  inventory-item-data:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  inventory-response-item:
    description: |
      Inventory item for response list
    properties:
      model-name:
        type: string
      extra-properties:
        type: object
        $ref: "#/getDefinitions/extra-properties"
      inventory-response-items:
        type: object
        $ref: "#/getDefinitions/inventory-response-items"
  inventory-response-items:
    description: |
      Container for inventory items in response list
    properties:
      inventory-response-item:
        type: array
        items:          
          $ref: "#/getDefinitions/inventory-response-item"
  ipsec-configuration:
    description: |
      IPSec configuration node will contain various configuration data for the NMTE VNF. This node will have an edge to the generic-vnf (vnf type = TE). Starting 1607, this data will be populated by SDN-C
      ###### Related Nodes
      - FROM generic-vnf( generic-vnf Uses ipsec-configuration, MANY2ONE)
      - FROM vig-server (CHILD of ipsec-configuration, vig-server BelongsTo ipsec-configuration, MANY2ONE)(1)

      -(1) IF this IPSEC-CONFIGURATION node is deleted, this FROM node is DELETED also
    required:
    - ipsec-configuration-id
    properties:
      ipsec-configuration-id:
        type: string
        description: UUID of this configuration
      requested-vig-address-type:
        type: string
        description: Indicate the type of VIG server like AVPN, INTERNET, BOTH
      requested-encryption-strength:
        type: string
        description: Encryption values like 3des-cbc, des-cbc, aes-128-cbc, aes-192-cbc, aes-265-cbc
      requested-dmz-type:
        type: string
        description: Shared DMZ or a DMZ specific to a customer
      shared-dmz-network-address:
        type: string
        description: Network address of shared DMZ
      requested-customer-name:
        type: string
        description: If the DMZ is a custom DMZ, this field will indicate the customer information
      ike-version:
        type: string
        description: can be 1 or 2
      ikev1-authentication:
        type: string
        description: Contains values like md5, sha1, sha256, sha384
      ikev1-encryption:
        type: string
        description: Encyption values like 3des-cbc, des-cbc, aes-128-cbc,Â aes-192-cbc, aes-265-cbc
      ikev1-dh-group:
        type: string
        description: Diffie-Hellman group like DH-GROUP2, DH-GROUP5, DH-GROUP14
      ikev1-am-group-id:
        type: string
        description: Group name defined in VIG for clients using aggressive mode
      ikev1-am-password:
        type: string
        description: pre-shared key for the above group name 
      ikev1-sa-lifetime:
        type: string
        description: Lifetime for IKEv1 SA
      ipsec-authentication:
        type: string
        description: md5, sha1, sha256, sha384
      ipsec-encryption:
        type: string
        description: 3des-cbc, des-cbc, aes-128-cbc,Â aes-192-cbc, aes-265-cbc
      ipsec-sa-lifetime:
        type: string
        description: Life time for IPSec SA
      ipsec-pfs:
        type: string
        description: enable PFS or not
      xauth-userid:
        type: string
        description: user ID for xAuth, sm-user,ucpeHostName,nmteHostName
      xauth-user-password:
        type: string
        description: Encrypted using the Juniper $9$ algorithm
      dpd-interval:
        type: string
        description: The time between DPD probe
      dpd-frequency:
        type: string
        description: Maximum number of DPD before claiming the tunnel is down
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      vig-servers:
        type: array
        items:
          $ref: "#/getDefinitions/vig-server"
  ipsec-configurations:
    properties:
      ipsec-configuration:
        type: array
        items:          
          $ref: "#/getDefinitions/ipsec-configuration"
  key-data:
    properties:
      key-name:
        type: string
      key-value:
        type: string
  l-interface:
    description: |
      Logical interfaces, e.g., a vnic.
      ###### Related Nodes
      - TO cp( l-interface LinksTo cp, ONE2ONE)
      - TO generic-vnf (PARENT of l-interface, l-interface BelongsTo generic-vnf, MANY2ONE)(4)
      - TO instance-group( l-interface MemberOf instance-group, MANY2MANY)
      - TO l-interface( l-interface BelongsTo l-interface, MANY2ONE)(4)
      - TO logical-link( l-interface LinksTo logical-link, MANY2MANY)(2)
      - TO newvce (PARENT of l-interface, l-interface BelongsTo newvce, MANY2ONE)(4)
      - TO p-interface (PARENT of l-interface, l-interface BindsTo p-interface, MANY2ONE)(4)
      - TO vserver (PARENT of l-interface, l-interface BindsTo vserver, MANY2ONE)(4)
      - TO lag-interface (PARENT of l-interface, l-interface BelongsTo lag-interface, MANY2ONE)(4)
      - FROM allotted-resource( allotted-resource Uses l-interface, ONE2MANY)
      - FROM configuration( configuration AppliesTo l-interface, ONE2MANY)
      - FROM forwarder( forwarder ForwardsTo l-interface, MANY2MANY)
      - FROM l-interface (PARENT of l-interface, l-interface BelongsTo l-interface, MANY2ONE)(4)
      - FROM logical-link( logical-link Source l-interface, MANY2MANY)(1)
      - FROM logical-link( logical-link Destination l-interface, MANY2MANY)(1)
      - FROM sriov-vf (CHILD of l-interface, sriov-vf BelongsTo l-interface, ONE2ONE)(1)
      - FROM vlan (CHILD of l-interface, vlan LinksTo l-interface, MANY2ONE)(1)
      - FROM vrf( vrf Uses l-interface, ONE2MANY)
      - FROM l3-interface-ipv4-address-list (CHILD of l-interface, l3-interface-ipv4-address-list BelongsTo l-interface, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of l-interface, l3-interface-ipv6-address-list BelongsTo l-interface, MANY2ONE)(1)
      - FROM lag-interface( lag-interface Uses l-interface, ONE2MANY)

      -(1) IF this L-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this L-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this L-INTERFACE is DELETED also
    required:
    - interface-name
    - is-port-mirrored
    - in-maint
    - is-ip-unnumbered
    properties:
      interface-name:
        type: string
        description: Name given to the interface
      interface-role:
        type: string
        description: E.g., CUSTOMER, UPLINK, etc.
      v6-wan-link-ip:
        type: string
        description: Questionably placed - v6 ip addr of this interface (is in vr-lan-interface from Mary B.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      interface-id:
        type: string
        description: ID of interface
      macaddr:
        type: string
        description: MAC address for the interface
      network-name:
        type: string
        description: Name of the network
      management-option:
        type: string
        description: Whether A&AI should be managing this interface of not. Could have value like CUSTOMER
      interface-description:
        type: string
        description: Human friendly text regarding this interface.
      is-port-mirrored:
        type: boolean
        description: boolean indicatating whether or not port is a mirrored.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      prov-status:
        type: string
        description: Prov Status of the logical interface. Valid values [PREPROV/NVTPROV/PROV].
      is-ip-unnumbered:
        type: boolean
        description: Flag indicating the interface uses the IP Unnumbered configuration.
      allowed-address-pairs:
        type: string
        description: Freeform field for storing an ip address, list of ip addresses or a subnet block.
      priority:
        type: integer
        format: int32
        description: Priority used for fail-over. Valid values 1-1024, with 1 being the highest priority.
      vlans:
        type: array
        items:
          $ref: "#/getDefinitions/vlan"
      sriov-vfs:
        type: array
        items:
          $ref: "#/getDefinitions/sriov-vf"
      l-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/l-interface"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
      admin-status:
        type: string
        description: Administrative status of the interface. Valid values are 'up', 'down', or 'testing'.
  l-interfaces:
    description: |
      Collection of logical interfaces.
    properties:
      l-interface:
        type: array
        items:          
          $ref: "#/getDefinitions/l-interface"
  l3-interface-ipv4-address-list:
    description: |
      IPv4 Address Range
      ###### Related Nodes
      - TO cp (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo cp, MANY2ONE)(4)
      - TO instance-group( l3-interface-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - TO l-interface (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo l-interface, MANY2ONE)(4)
      - TO l3-network( l3-interface-ipv4-address-list MemberOf l3-network, MANY2MANY)
      - TO subnet( l3-interface-ipv4-address-list MemberOf subnet, MANY2MANY)
      - TO vlan (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo vlan, MANY2ONE)(4)
      - TO vnfc (PARENT of l3-interface-ipv4-address-list, l3-interface-ipv4-address-list BelongsTo vnfc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this L3-INTERFACE-IPV4-ADDRESS-LIST is DELETED also
    required:
    - l3-interface-ipv4-address
    properties:
      l3-interface-ipv4-address:
        type: string
        description: IP address
      l3-interface-ipv4-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 32 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  l3-interface-ipv6-address-list:
    description: |
      IPv6 Address Range
      ###### Related Nodes
      - TO cp (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo cp, MANY2ONE)(4)
      - TO instance-group( l3-interface-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - TO l-interface (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo l-interface, MANY2ONE)(4)
      - TO l3-network( l3-interface-ipv6-address-list MemberOf l3-network, MANY2MANY)
      - TO subnet( l3-interface-ipv6-address-list MemberOf subnet, MANY2MANY)
      - TO vlan (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo vlan, MANY2ONE)(4)
      - TO vnfc (PARENT of l3-interface-ipv6-address-list, l3-interface-ipv6-address-list BelongsTo vnfc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this L3-INTERFACE-IPV6-ADDRESS-LIST is DELETED also
    required:
    - l3-interface-ipv6-address
    properties:
      l3-interface-ipv6-address:
        type: string
        description: IP address
      l3-interface-ipv6-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 128 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  l3-network:
    description: |
      Generic network definition
      ###### Related Nodes
      - TO cp( l3-network LinksTo cp, MANY2MANY)
      - TO instance-group( l3-network MemberOf instance-group, MANY2MANY)
      - TO l3-network( l3-network Uses l3-network, MANY2MANY)
      - TO network-policy( l3-network Uses network-policy, MANY2MANY)
      - TO route-table-reference( l3-network Uses route-table-reference, MANY2MANY)
      - TO vpn-binding( l3-network Uses vpn-binding, MANY2MANY)
      - FROM aggregate-route (CHILD of l3-network, aggregate-route BelongsTo l3-network, MANY2ONE)(1)
      - FROM allotted-resource( allotted-resource PartOf l3-network, MANY2MANY)
      - FROM cloud-region( cloud-region Uses l3-network, MANY2MANY)
      - FROM complex( complex Uses l3-network, MANY2MANY)
      - FROM configuration( configuration PartOf l3-network, MANY2MANY)
      - FROM ctag-assignment (CHILD of l3-network, ctag-assignment BelongsTo l3-network, MANY2ONE)(1)
      - FROM generic-vnf( generic-vnf Uses l3-network, MANY2MANY)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf l3-network, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf l3-network, MANY2MANY)
      - FROM l3-network( l3-network Uses l3-network, MANY2MANY)
      - FROM line-of-business( line-of-business Uses l3-network, MANY2MANY)
      - FROM platform( platform Uses l3-network, MANY2MANY)
      - FROM segmentation-assignment (CHILD of l3-network, segmentation-assignment BelongsTo l3-network, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf l3-network, ONE2MANY)
      - FROM subnet (CHILD of l3-network, subnet BelongsTo l3-network, MANY2ONE)(1)
      - FROM tenant( tenant Uses l3-network, MANY2MANY)
      - FROM vf-module( vf-module DependsOn l3-network, MANY2MANY)
      - FROM vlan-tag( vlan-tag BelongsTo l3-network, MANY2MANY)
      - FROM vrf( vrf Uses l3-network, ONE2MANY)
      A vrf uses many l3-networks

      -(1) IF this L3-NETWORK node is deleted, this FROM node is DELETED also
    required:
    - network-id
    - is-bound-to-vpn
    - is-provider-network
    - is-shared-network
    - is-external-network
    properties:
      network-id:
        type: string
        description: Network ID, should be uuid. Unique across A&AI.
      network-name:
        type: string
        description: Name of the network, governed by some naming convention..
      network-type:
        type: string
        description: Type of the network - who defines these values?
      network-role:
        type: string
        description: Role the network plans - who defines these values?
      network-technology:
        type: string
        description: Network technology - who defines these values?
      neutron-network-id:
        type: string
        description: Neutron network id of this Interface
      is-bound-to-vpn:
        type: boolean
        description: Set to true if bound to VPN
      service-id:
        type: string
        description: Unique identifier of service from ASDC.  Does not strictly map to ASDC services.  SOON TO BE DEPRECATED
      network-role-instance:
        type: integer
        format: int64
        description: network role instance
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      contrail-network-fqdn:
        type: string
        description: Contrail FQDN for the network
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      physical-network-name:
        type: string
        description: Name associated with the physical network.
      is-provider-network:
        type: boolean
        description: boolean indicatating whether or not network is a provider network.
      is-shared-network:
        type: boolean
        description: boolean indicatating whether or not network is a shared network.
      is-external-network:
        type: boolean
        description: boolean indicatating whether or not network is an external network.
      selflink:
        type: string
        description: Path to the controller object.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational.
      is-trunked:
        type: boolean
        description: Trunked network indication.
      subnets:
        type: array
        items:
          $ref: "#/getDefinitions/subnet"
      ctag-assignments:
        type: array
        items:
          $ref: "#/getDefinitions/ctag-assignment"
      segmentation-assignments:
        type: array
        items:
          $ref: "#/getDefinitions/segmentation-assignment"
      aggregate-routes:
        type: array
        items:
          $ref: "#/getDefinitions/aggregate-route"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
        description: Relates to tenant (or is it a child of tenant), complex, service, vpn-binding
  l3-networks:
    properties:
      l3-network:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-network"
  lag-interface:
    description: |
      Link aggregate interface
      ###### Related Nodes
      - TO generic-vnf (PARENT of lag-interface, lag-interface BelongsTo generic-vnf, MANY2ONE)(4)
      - TO l-interface( lag-interface Uses l-interface, ONE2MANY)
      - TO lag-link( lag-interface LinksTo lag-link, MANY2MANY)(2)
      - TO logical-link( lag-interface Uses logical-link, MANY2MANY)(2)
      - TO p-interface( lag-interface Uses p-interface, MANY2MANY)
      - TO pnf (PARENT of lag-interface, lag-interface BindsTo pnf, MANY2ONE)(4)
      - TO pserver (PARENT of lag-interface, lag-interface BindsTo pserver, MANY2ONE)(4)
      - TO vpls-pe (PARENT of lag-interface, lag-interface BindsTo vpls-pe, MANY2ONE)(4)
      - FROM forwarder( forwarder ForwardsTo lag-interface, MANY2MANY)
      - FROM l-interface (CHILD of lag-interface, l-interface BelongsTo lag-interface, MANY2ONE)(1)

      -(1) IF this LAG-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this LAG-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this LAG-INTERFACE is DELETED also
    required:
    - interface-name
    - in-maint
    properties:
      interface-name:
        type: string
        description: Name that identifies the link aggregate interface
      interface-description:
        type: string
        description: Human friendly text regarding this interface.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      interface-id:
        type: string
        description: ID of interface
      interface-role:
        type: string
        description: Role assigned to this Interface, should use values as defined in ONAP Yang models.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/l-interface"
  lag-interfaces:
    description: |
      Collection of link aggregate interfaces.
    properties:
      lag-interface:
        type: array
        items:          
          $ref: "#/getDefinitions/lag-interface"
  lag-link:
    description: |
      LAG links can connect lag-interfaces
      ###### Related Nodes
      - FROM lag-interface( lag-interface LinksTo lag-link, MANY2MANY)(3)
      - FROM logical-link( logical-link Uses lag-link, MANY2MANY)

      -(3) IF this FROM node is deleted, this LAG-LINK is DELETED also
    required:
    - link-name
    properties:
      link-name:
        type: string
        description: Alphabetical concatenation of lag-interface names
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  lag-links:
    description: |
      Collection of link aggregation connections
    properties:
      lag-link:
        type: array
        items:          
          $ref: "#/getDefinitions/lag-link"
  lan-port-config:
    description: |
      Instance of a lan-port-config
      ###### Related Nodes
      - TO dhcp-service (PARENT of lan-port-config, lan-port-config Uses dhcp-service, ONE2MANY)
      For CCVPN Usecase(2)
      - TO ext-aai-network( lan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( lan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this LAN-PORT-CONFIG node is deleted, this TO node is DELETED also
    required:
    - lan-port-config-id
    properties:
      lan-port-config-id:
        type: string
        description: Uniquely identifies this lan-port-config by id
      lan-port-config-name:
        type: string
        description: Store the name of this lan-port-config.
      description:
        type: string
        description: Store the description of this lan-port-config.
      device-id:
        type: string
        description: Store the device-id of this lan-port-config.
      port-id:
        type: string
        description: Store the port-id of this lan-port-config.
      ipv4-address:
        type: string
        description: Store the ipv4-address of this lan-port-config.
      ipv6-address:
        type: string
        description: Store the ipv6-address of this lan-port-config.
      vlan-tag:
        type: string
        description: Store the vlan-tag of this lan-port-config.
      input-bandwidth:
        type: string
        description: Store the input-bandwidth of this lan-port-config.
      output-bandwidth:
        type: string
        description: Store the output-bandwidth of this lan-port-config.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      dhcp-services:
        type: array
        items:
          $ref: "#/getDefinitions/dhcp-service"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  lan-port-configs:
    description: |
      Collection of lan-port-configs
    properties:
      lan-port-config:
        type: array
        items:          
          $ref: "#/getDefinitions/lan-port-config"
  license:
    description: |
      Metadata for license group.
      ###### Related Nodes
      - TO generic-vnf (PARENT of license, license BelongsTo generic-vnf, MANY2ONE)(4)
      - TO vce (PARENT of license, license BelongsTo vce, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this LICENSE is DELETED also
    required:
    - group-uuid
    - resource-uuid
    properties:
      group-uuid:
        type: string
        description: Unique ID for the license group the resource belongs to, should be uuid.
      resource-uuid:
        type: string
        description: Unique ID of a license resource. 
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  licenses:
    description: |
      Licenses to be allocated across resources, keyed by group-uuid and resource-uuid, related to license management
    properties:
      license:
        type: array
        items:          
          $ref: "#/getDefinitions/license"
  line-of-business:
    description: |
      describes a line-of-business
      ###### Related Nodes
      - TO generic-vnf( line-of-business Uses generic-vnf, MANY2MANY)
      - TO l3-network( line-of-business Uses l3-network, MANY2MANY)
    required:
    - line-of-business-name
    properties:
      line-of-business-name:
        type: string
        description: Name of the line-of-business (product)
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  lines-of-business:
    description: |
      Collection of lines-of-business
    properties:
      line-of-business:
        type: array
        items:          
          $ref: "#/getDefinitions/line-of-business"
  logical-link:
    description: |
      Logical links generally connect l-interfaces but are used to express logical connectivity between two points
      ###### Related Nodes
      - TO cloud-region( logical-link LocatedIn cloud-region, MANY2MANY)
      - TO ext-aai-network( logical-link BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO generic-vnf( logical-link BridgedTo generic-vnf, MANY2MANY)
      - TO l-interface( logical-link Source l-interface, MANY2MANY)(4)
      - TO l-interface( logical-link Destination l-interface, MANY2MANY)(4)
      - TO lag-link( logical-link Uses lag-link, MANY2MANY)
      - TO logical-link( logical-link Uses logical-link, MANY2MANY)
      - TO pnf( logical-link BridgedTo pnf, MANY2MANY)
      - TO pserver( logical-link BridgedTo pserver, MANY2MANY)
      - TO virtual-data-center( logical-link LocatedIn virtual-data-center, MANY2MANY)
      - TO vpn-binding( logical-link Uses vpn-binding, MANY2MANY)
      - FROM configuration( configuration Uses logical-link, ONE2MANY)(3)
      - FROM l-interface( l-interface LinksTo logical-link, MANY2MANY)(3)
      - FROM lag-interface( lag-interface Uses logical-link, MANY2MANY)(3)
      - FROM logical-link( logical-link Uses logical-link, MANY2MANY)
      - FROM p-interface( p-interface LinksTo logical-link, MANY2ONE)
      - FROM service-instance( service-instance Uses logical-link, MANY2MANY)(3)
      - FROM vlan( vlan Uses logical-link, MANY2MANY)(3)

      -(2) IF this LOGICAL-LINK node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this LOGICAL-LINK is DELETED also
      -(4) IF this TO node is deleted, this LOGICAL-LINK is DELETED also
    required:
    - link-name
    - in-maint
    - link-type
    properties:
      link-name:
        type: string
        description: e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      link-type:
        type: string
        description: Type of logical link, e.g., evc
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      ip-version:
        type: string
        description: v4, v6, or ds for dual stack
      routing-protocol:
        type: string
        description: For example, static or BGP
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      operational-status:
        type: string
        description: Indication of operational status of the logical link.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      link-role:
        type: string
        description: Indication of the network use of the logical link.
      link-name2:
        type: string
        description: Alias or alternate name (CLCI or D1 name).
      link-id:
        type: string
        description: UUID of the logical-link, SDNC generates this.
      circuit-id:
        type: string
        description: Circuit id
      purpose:
        type: string
        description: Reason for this entity, role it is playing
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  logical-links:
    description: |
      Collection of logical connections
    properties:
      logical-link:
        type: array
        items:          
          $ref: "#/getDefinitions/logical-link"
  metadata:
    description: |
      Collection of metadatum (key/value pairs)
    properties:
      metadatum:
        type: array
        items:          
          $ref: "#/getDefinitions/metadatum"
  metadatum:
    description: |
      Key/value pairs
      ###### Related Nodes
      - TO configuration (PARENT of metadatum, metadatum BelongsTo configuration, MANY2ONE)(4)
      - TO connector (PARENT of metadatum, metadatum BelongsTo connector, MANY2ONE)(4)
      - TO cp( metadatum AppliesTo cp, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO generic-vnf( metadatum AppliesTo generic-vnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO image (PARENT of metadatum, metadatum BelongsTo image, MANY2ONE)(4)
      - TO model-ver (PARENT of metadatum, metadatum BelongsTo model-ver, MANY2ONE)(4)
      - TO pnf( metadatum AppliesTo pnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - TO service-instance (PARENT of metadatum, metadatum BelongsTo service-instance, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this METADATUM is DELETED also
    required:
    - metaname
    - metaval
    properties:
      metaname:
        type: string
      metaval:
        type: string
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
  model:
    description: |
      Subgraph definition provided by ASDC to describe an inventory asset and its connections related to ASDC models, independent of version
      ###### Related Nodes
      - FROM instance-group( instance-group Targets model, MANY2MANY)
      - FROM model-ver (CHILD of model, model-ver BelongsTo model, MANY2ONE)(1)
      - FROM named-query( named-query AppliesTo model, ONE2MANY)
      - FROM named-query-element( named-query-element IsA model, MANY2ONE)

      -(1) IF this MODEL node is deleted, this FROM node is DELETED also
      -MODEL cannot be deleted if related to INSTANCE-GROUP,NAMED-QUERY,NAMED-QUERY-ELEMENT
    required:
    - model-invariant-id
    - model-type
    properties:
      model-invariant-id:
        type: string
        description: Unique identifier corresponding to the main definition of a model in ASDC
      model-type:
        type: string
        description: Type of the model, e.g., service, resource, widget, etc.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-vers:
        type: array
        items:
          $ref: "#/getDefinitions/model-ver"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  model-and-named-query-search:
    description: |
      ModelAndNamedQuerySearch holds query-parameters and instance-properties for performing a named-query or model query
    properties:
      query-parameters:
        type: object
        $ref: "#/getDefinitions/query-parameters"
      instance-filters:
        type: object
        $ref: "#/getDefinitions/instance-filters"
      secondary-filts:
        type: object
        $ref: "#/getDefinitions/secondary-filts"
      top-node-type:
        type: string
      secondary-filter-cut-point:
        type: string
  model-constraint:
    description: |
      This is how we would capture constraints defining allowed sets of elements.
      ###### Related Nodes
      - TO model-element (PARENT of model-constraint, model-constraint BelongsTo model-element, MANY2ONE)(4)
      - FROM constrained-element-set (CHILD of model-constraint, constrained-element-set BelongsTo model-constraint, MANY2ONE)(1)

      -(1) IF this MODEL-CONSTRAINT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-CONSTRAINT is DELETED also
    required:
    - model-constraint-uuid
    - constrained-element-set-uuid-to-replace
    properties:
      model-constraint-uuid:
        type: string
      constrained-element-set-uuid-to-replace:
        type: string
      constrained-element-sets:
        type: array
        items:
          $ref: "#/getDefinitions/constrained-element-set"
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
  model-constraints:
    properties:
      model-constraint:
        type: array
        items:          
          $ref: "#/getDefinitions/model-constraint"
  model-element:
    description: |
      Defines how other models combine to make up a higher-level model.
      ###### Related Nodes
      - TO element-choice-set (PARENT of model-element, model-element BelongsTo element-choice-set, MANY2ONE)(4)
      - TO model-element( model-element BelongsTo model-element, MANY2ONE)(4)
      - TO model-ver( model-element IsA model-ver, MANY2ONE)
      - TO model-ver (PARENT of model-element, model-element BelongsTo model-ver, MANY2ONE)(4)
      - FROM constrained-element-set (CHILD of model-element, constrained-element-set BelongsTo model-element, MANY2ONE)(1)
      - FROM model-constraint (CHILD of model-element, model-constraint BelongsTo model-element, MANY2ONE)(1)
      - FROM model-element (PARENT of model-element, model-element BelongsTo model-element, MANY2ONE)(4)

      -(1) IF this MODEL-ELEMENT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-ELEMENT is DELETED also
    required:
    - model-element-uuid
    - new-data-del-flag
    - cardinality
    properties:
      model-element-uuid:
        type: string
      new-data-del-flag:
        type: string
        description: Indicates whether this element was created as part of instantiation from this model
      cardinality:
        type: string
        description: How many of this type of element are required/allowed
      linkage-points:
        type: string
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-elements:
        type: array
        items:
          $ref: "#/getDefinitions/model-element"
        description: Defines how other models combine to make up a higher-level model
      model-constraints:
        type: array
        items:
          $ref: "#/getDefinitions/model-constraint"
        description: Describes new constraints on this model element that are not part of that model's definition
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  model-elements:
    properties:
      model-element:
        type: array
        items:          
          $ref: "#/getDefinitions/model-element"
  model-ver:
    description: |
      Subgraph definition provided by ASDC to describe a specific version of an inventory asset and its connections related to ASDC models
      ###### Related Nodes
      - TO model (PARENT of model-ver, model-ver BelongsTo model, MANY2ONE)(4)
      - FROM metadatum (CHILD of model-ver, metadatum BelongsTo model-ver, MANY2ONE)(1)
      - FROM model-element( model-element IsA model-ver, MANY2ONE)
      - FROM model-element (CHILD of model-ver, model-element BelongsTo model-ver, MANY2ONE)(1)

      -(1) IF this MODEL-VER node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this MODEL-VER is DELETED also
      -MODEL-VER cannot be deleted if related to MODEL-ELEMENT
    required:
    - model-version-id
    - model-name
    - model-version
    properties:
      model-version-id:
        type: string
        description: Unique identifier corresponding to one version of a model in ASDC
      model-name:
        type: string
        description: Name of the model, which can change from version to version.
      model-version:
        type: string
        description: Version
      distribution-status:
        type: string
        description: Distribution Status
      model-description:
        type: string
        description: Description
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-elements:
        type: array
        items:
          $ref: "#/getDefinitions/model-element"
      metadata:
        type: array
        items:
          $ref: "#/getDefinitions/metadatum"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  model-vers:
    properties:
      model-ver:
        type: array
        items:          
          $ref: "#/getDefinitions/model-ver"
  models:
    description: |
      Collection of subgraph definitions provided by ASDC to describe the inventory assets and their connections related to ASDC models
    properties:
      model:
        type: array
        items:          
          $ref: "#/getDefinitions/model"
  multicast-configuration:
    description: |
      ###### Related Nodes
      - FROM vlan( vlan Uses multicast-configuration, MANY2MANY)
    required:
    - multicast-configuration-id
    - multicast-protocol
    - rp-type
    properties:
      multicast-configuration-id:
        type: string
        description: Unique id of multicast configuration.
      multicast-protocol:
        type: string
        description: protocol of multicast configuration
      rp-type:
        type: string
        description: rp type of multicast configuration
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  multicast-configurations:
    description: |
      multicast configuration of generic-vnf ip-address
    properties:
      multicast-configuration:
        type: array
        items:          
          $ref: "#/getDefinitions/multicast-configuration"
  named-queries:
    properties:
      named-query:
        type: array
        items:          
          $ref: "#/getDefinitions/named-query"
  named-query:
    description: |
      TBD
      ###### Related Nodes
      - TO model( named-query AppliesTo model, ONE2MANY)
      - FROM named-query-element (CHILD of named-query, named-query-element BelongsTo named-query, ONE2ONE)(1)

      -(1) IF this NAMED-QUERY node is deleted, this FROM node is DELETED also
    required:
    - named-query-uuid
    - named-query-name
    - named-query-version
    properties:
      named-query-uuid:
        type: string
      named-query-name:
        type: string
      named-query-version:
        type: string
      required-input-param:
        type: string
      description:
        type: string
      resource-version:
        type: string
      named-query-elements:
        type: array
        items:
          $ref: "#/getDefinitions/named-query-element"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  named-query-element:
    description: |
      TBD
      ###### Related Nodes
      - TO model( named-query-element IsA model, MANY2ONE)
      - TO named-query-element( named-query-element BelongsTo named-query-element, MANY2ONE)(4)
      - TO named-query (PARENT of named-query-element, named-query-element BelongsTo named-query, ONE2ONE)(4)
      - FROM named-query-element (PARENT of named-query-element, named-query-element BelongsTo named-query-element, MANY2ONE)(4)
      - FROM property-constraint (CHILD of named-query-element, property-constraint BelongsTo named-query-element, MANY2ONE)(1)
      - FROM related-lookup (CHILD of named-query-element, related-lookup BelongsTo named-query-element, MANY2ONE)(1)

      -(1) IF this NAMED-QUERY-ELEMENT node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this NAMED-QUERY-ELEMENT is DELETED also
    required:
    - named-query-element-uuid
    properties:
      named-query-element-uuid:
        type: string
      property-collect-list:
        type: string
      resource-version:
        type: string
      property-limit-desc:
        type: string
      do-not-output:
        type: string
      named-query-elements:
        type: array
        items:
          $ref: "#/getDefinitions/named-query-element"
      related-lookups:
        type: array
        items:
          $ref: "#/getDefinitions/related-lookup"
      property-constraints:
        type: array
        items:
          $ref: "#/getDefinitions/property-constraint"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  named-query-elements:
    properties:
      named-query-element:
        type: array
        items:          
          $ref: "#/getDefinitions/named-query-element"
  network:
    description: |
      Namespace for network inventory resources.
    properties:
      logical-links:
        type: array
        items:
          $ref: "#/getDefinitions/logical-link"
      site-pair-sets:
        type: array
        items:
          $ref: "#/getDefinitions/site-pair-set"
      vpn-bindings:
        type: array
        items:
          $ref: "#/getDefinitions/vpn-binding"
      vpls-pes:
        type: array
        items:
          $ref: "#/getDefinitions/vpls-pe"
      multicast-configurations:
        type: array
        items:
          $ref: "#/getDefinitions/multicast-configuration"
      vces:
        type: array
        items:
          $ref: "#/getDefinitions/vce"
      vnfcs:
        type: array
        items:
          $ref: "#/getDefinitions/vnfc"
      l3-networks:
        type: array
        items:
          $ref: "#/getDefinitions/l3-network"
      network-policies:
        type: array
        items:
          $ref: "#/getDefinitions/network-policy"
      generic-vnfs:
        type: array
        items:
          $ref: "#/getDefinitions/generic-vnf"
      lag-links:
        type: array
        items:
          $ref: "#/getDefinitions/lag-link"
      newvces:
        type: array
        items:
          $ref: "#/getDefinitions/newvce"
      pnfs:
        type: array
        items:
          $ref: "#/getDefinitions/pnf"
      physical-links:
        type: array
        items:
          $ref: "#/getDefinitions/physical-link"
      ipsec-configurations:
        type: array
        items:
          $ref: "#/getDefinitions/ipsec-configuration"
      route-table-references:
        type: array
        items:
          $ref: "#/getDefinitions/route-table-reference"
      instance-groups:
        type: array
        items:
          $ref: "#/getDefinitions/instance-group"
      zones:
        type: array
        items:
          $ref: "#/getDefinitions/zone"
      configurations:
        type: array
        items:
          $ref: "#/getDefinitions/configuration"
      forwarding-paths:
        type: array
        items:
          $ref: "#/getDefinitions/forwarding-path"
      collections:
        type: array
        items:
          $ref: "#/getDefinitions/collection"
      vlan-tags:
        type: array
        items:
          $ref: "#/getDefinitions/vlan-tag"
      connectivities:
        type: array
        items:
          $ref: "#/getDefinitions/connectivity"
      lan-port-configs:
        type: array
        items:
          $ref: "#/getDefinitions/lan-port-config"
      network-resources:
        type: array
        items:
          $ref: "#/getDefinitions/network-resource"
      site-resources:
        type: array
        items:
          $ref: "#/getDefinitions/site-resource"
      sdwan-vpns:
        type: array
        items:
          $ref: "#/getDefinitions/sdwan-vpn"
      devices:
        type: array
        items:
          $ref: "#/getDefinitions/device"
      wan-port-configs:
        type: array
        items:
          $ref: "#/getDefinitions/wan-port-config"
      ext-aai-networks:
        type: array
        items:
          $ref: "#/getDefinitions/ext-aai-network"
  network-policies:
    properties:
      network-policy:
        type: array
        items:          
          $ref: "#/getDefinitions/network-policy"
  network-policy:
    description: |
      ###### Related Nodes
      - FROM allotted-resource( allotted-resource Uses network-policy, ONE2ONE)
      - FROM l3-network( l3-network Uses network-policy, MANY2MANY)
    required:
    - network-policy-id
    properties:
      network-policy-id:
        type: string
        description: UUID representing unique key to this instance
      network-policy-fqdn:
        type: string
        description: Contrail FQDN for the policy
      heat-stack-id:
        type: string
        description: ID for the openStack Heat instance
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  network-profile:
    description: |
      Network profile populated by SDN-GP for SNMP
      ###### Related Nodes
      - TO generic-vnf( network-profile AppliesTo generic-vnf, MANY2MANY)
    required:
    - nm-profile-name
    properties:
      nm-profile-name:
        type: string
        description: Unique name of network profile.
      community-string:
        type: string
        description: Encrypted SNMP community string
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  network-profiles:
    description: |
      Collection of network profiles
    properties:
      network-profile:
        type: array
        items:          
          $ref: "#/getDefinitions/network-profile"
  network-resource:
    description: |
      Instance of a network-resource
      ###### Related Nodes
      - TO ext-aai-network( network-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO vpn-binding( network-resource Uses vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM pnf( pnf LinksTo network-resource, MANY2MANY)
      For CCVPN Usecase(1)

      -(1) IF this NETWORK-RESOURCE node is deleted, this FROM node is DELETED also
      -(2) IF this NETWORK-RESOURCE node is deleted, this TO node is DELETED also
    required:
    - network-id
    properties:
      network-id:
        type: string
        description: Uniquely identifies this network-resource by id
      provider-id:
        type: string
        description: Store the id of the provider of this network-resource.
      client-id:
        type: string
        description: Store the id of the client of this network-resource.
      te-topo-id:
        type: string
        description: Store the id of the te-topo of this network-resource.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  network-resources:
    description: |
      Collection of network-resources
    properties:
      network-resource:
        type: array
        items:          
          $ref: "#/getDefinitions/network-resource"
  network-technologies:
    description: |
       The network-technology object is used to capture the supported network technologies of a cloud-region.
    properties:
      network-technology:
        type: array
        items:          
          $ref: "#/getDefinitions/network-technology"
  network-technology:
    description: |
      The network-technology object is used to capture the supported network technologies of a cloud-region.
      ###### Related Nodes
      - FROM cloud-region( cloud-region Uses network-technology, MANY2MANY)
    required:
    - network-technology-id
    - network-technology-name
    properties:
      network-technology-id:
        type: string
        description: Unique identifier of the network-technology object (UUID)
      network-technology-name:
        type: string
        description: The network-technology  that a cloud-region can support. Current valid values- CONTRAIL AIC_SR_IOV OVS STANDARD-SR-IOV
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  newvce:
    description: |
      This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce.
      ###### Related Nodes
      - FROM l-interface (CHILD of newvce, l-interface BelongsTo newvce, MANY2ONE)(1)

      -(1) IF this NEWVCE node is deleted, this FROM node is DELETED also
    required:
    - vnf-id2
    - vnf-name
    - vnf-type
    properties:
      vnf-id2:
        type: string
        description: Unique id of VNF, can't use same attribute name right now until we promote this new object
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the ASDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ECOMP matures.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      license-key:
        type: string
        description: OBSOLETE -  do not use
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address).
      equipment-role:
        type: string
        description: Client should send valid enumerated value.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      ipv4-loopback0-address:
        type: string
        description: v4 Loopback0 address
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO.
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/l-interface"
  newvces:
    description: |
      This object fills in the gaps from vce that were incorporated into generic-vnf.  This object will be retired with vce.
    properties:
      newvce:
        type: array
        items:          
          $ref: "#/getDefinitions/newvce"
  nodes:
    properties:
      inventory-item-data:
        type: array
        items:
          $ref: "#/getDefinitions/inventory-item-data"
  nos-server:
    description: |
      nos-server is the execution environment that will have images, certain versions of VNOS, running on it.
      ###### Related Nodes
      - TO pserver( nos-server HostedOn pserver, ONE2ONE)
      - TO tenant (PARENT of nos-server, nos-server BelongsTo tenant, MANY2ONE)
      - FROM generic-vnf( generic-vnf HostedOn nos-server, MANY2ONE)
    required:
    - nos-server-id
    - nos-server-name
    - vendor
    - nos-server-selflink
    - in-maint
    properties:
      nos-server-id:
        type: string
        description: Unique identifier for this nos relative to its tenant
      nos-server-name:
        type: string
        description: Name of nos
      vendor:
        type: string
        description: uCPE vendor
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      nos-server-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  nos-servers:
    description: |
      nos-server is the execution environment that will have images, certain versions of VNOS, running on it.
    properties:
      nos-server:
        type: array
        items:          
          $ref: "#/getDefinitions/nos-server"
  notification-event:
    properties:
      cambria.partition:
        type: string
      notification-event-header:
        type: object
        $ref: "#/getDefinitions/notification-event-header"
  notification-event-header:
    properties:
      id:
        type: string
      timestamp:
        type: string
      source-name:
        type: string
      domain:
        type: string
      sequence-number:
        type: string
      severity:
        type: string
      event-type:
        type: string
      version:
        type: string
      action:
        type: string
      entity-type:
        type: string
      top-entity-type:
        type: string
      entity-link:
        type: string
      status:
        type: string
  notify:
    required:
    - event-id
    properties:
      event-id:
        type: string
      node-type:
        type: string
      event-trigger:
        type: string
      key-data:
        type: array
        items:          
          $ref: "#/getDefinitions/key-data"
      selflink:
        type: string
  oam-network:
    description: |
      OAM network, to be deprecated shortly.  Do not use for new purposes. 
      ###### Related Nodes
      - TO cloud-region (PARENT of oam-network, oam-network BelongsTo cloud-region, MANY2ONE)
      - TO complex( oam-network AppliesTo complex, MANY2MANY)
      - TO service-capability( oam-network AppliesTo service-capability, MANY2MANY)
    required:
    - network-uuid
    - network-name
    - cvlan-tag
    properties:
      network-uuid:
        type: string
        description: UUID of the network. Unique across a cloud-region
      network-name:
        type: string
        description: Name of the network.
      cvlan-tag:
        type: integer
        format: int64
        description: cvlan-id
      ipv4-oam-gateway-address:
        type: string
        description: Used for VNF firewall rule so customer cannot send customer traffic over this oam network
      ipv4-oam-gateway-address-prefix-length:
        type: integer
        format: int32
        description: Used for VNF firewall rule so customer cannot send customer traffic over this oam network
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  oam-networks:
    description: |
      Collection of OAM networks, to be deprecated shortly.  Do not use for new purposes. 
    properties:
      oam-network:
        type: array
        items:          
          $ref: "#/getDefinitions/oam-network"
  operational-environment:
    description: |
      It is a logical partition of the cloud which allows to have multiple environments in the production AIC.
      ###### Related Nodes
      - TO operational-environment( operational-environment Uses operational-environment, MANY2MANY)
      - FROM operational-environment( operational-environment Uses operational-environment, MANY2MANY)
    required:
    - operational-environment-id
    - operational-environment-name
    - operational-environment-type
    - operational-environment-status
    - tenant-context
    - workload-context
    properties:
      operational-environment-id:
        type: string
        description: UUID of an operational environment
      operational-environment-name:
        type: string
        description: Operational Environment name
      operational-environment-type:
        type: string
        description: Operational Environment Type.
      operational-environment-status:
        type: string
        description: Status
      tenant-context:
        type: string
        description: Tenant Context.
      workload-context:
        type: string
        description: Workload Context.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  operational-environments:
    description: |
      a logical partition of the cloud which allows to have multiple environments in the production AIC.
    properties:
      operational-environment:
        type: array
        items:          
          $ref: "#/getDefinitions/operational-environment"
  overloaded-model:
    description: |
      Allows for legacy POST of old-style and new-style models
    required:
    - model-invariant-id
    - model-name-version-id
    - model-type
    - model-name
    - model-id
    - model-version
    properties:
      model-invariant-id:
        type: string
        description: Unique identifier corresponding to the main definition of a model in ASDC
      model-name-version-id:
        type: string
        description: Unique identifier corresponding to one version of a model in ASDC
      model-type:
        type: string
        description: Type of the model, e.g., service, resource, widget, etc.
      model-name:
        type: string
        description: Name of the model, which can change from version to version.
      model-id:
        type: string
        description: Invariant unique ID which does not change from version to version
      model-version:
        type: string
        description: Version
      model-description:
        type: string
        description: Description
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-vers:
        type: object
        $ref: "#/getDefinitions/model-vers"
      relationship-list:
        type: object
        $ref: "#/getDefinitions/relationship-list"
  owning-entities:
    description: |
      Collection of owning-entities
    properties:
      owning-entity:
        type: array
        items:          
          $ref: "#/getDefinitions/owning-entity"
  owning-entity:
    description: |
      describes an owning-entity
      ###### Related Nodes
      - FROM service-instance( service-instance BelongsTo owning-entity, MANY2ONE)
    required:
    - owning-entity-id
    - owning-entity-name
    properties:
      owning-entity-id:
        type: string
        description: UUID of an owning entity
      owning-entity-name:
        type: string
        description: Owning entity name
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  p-interface:
    description: |
      Physical interface (e.g., nic)
      ###### Related Nodes
      - TO logical-link( p-interface LinksTo logical-link, MANY2ONE)
      - TO pnf (PARENT of p-interface, p-interface BindsTo pnf, MANY2ONE)(4)
      - TO pserver (PARENT of p-interface, p-interface BindsTo pserver, MANY2ONE)(4)
      - TO vpls-pe (PARENT of p-interface, p-interface BindsTo vpls-pe, MANY2ONE)(4)
      - TO physical-link( p-interface LinksTo physical-link, MANY2ONE)(2)
      - FROM allotted-resource( allotted-resource Uses p-interface, ONE2MANY)
      AAI-1925 For CCVPN Usecase
      - FROM forwarder( forwarder ForwardsTo p-interface, MANY2MANY)
      - FROM l-interface (CHILD of p-interface, l-interface BindsTo p-interface, MANY2ONE)(1)
      - FROM lag-interface( lag-interface Uses p-interface, MANY2MANY)
      - FROM sriov-pf (CHILD of p-interface, sriov-pf BelongsTo p-interface, ONE2ONE)(1)
      - FROM vpn-binding( vpn-binding BindsTo p-interface, ONE2MANY)
      For CCVPN Usecase

      -(1) IF this P-INTERFACE node is deleted, this FROM node is DELETED also
      -(2) IF this P-INTERFACE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this P-INTERFACE is DELETED also
    required:
    - interface-name
    - in-maint
    properties:
      interface-name:
        type: string
        description: Name that identifies the physical interface
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details.
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      port-description:
        type: string
        description: Nature of the services and connectivity on this port.
      equipment-identifier:
        type: string
        description: CLEI or other specification for p-interface hardware.
      interface-role:
        type: string
        description: Role specification for p-interface hardware.
      interface-type:
        type: string
        description: Indicates the physical properties of the interface.
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      mac-addresss:
        type: string
        description: MAC Address of the p-interface.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      inv-status:
        type: string
        description: inventory status
      network-ref:
        type: string
        description: Store the network-ref of this p-interface. Derived from ietf-restconf-notification that identifies a termination-point.
      transparent:
        type: string
        description: Store the transparent value of this p-interface.
      operational-status:
        type: string
        description: oper Status of this p-interface.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      sriov-pfs:
        type: array
        items:
          $ref: "#/getDefinitions/sriov-pf"
      l-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/l-interface"
  p-interfaces:
    description: |
      Collection of physical interfaces.
    properties:
      p-interface:
        type: array
        items:          
          $ref: "#/getDefinitions/p-interface"
  physical-link:
    description: |
      Collection of physical connections, typically between p-interfaces
      ###### Related Nodes
      - FROM p-interface( p-interface LinksTo physical-link, MANY2ONE)(3)

      -(3) IF this FROM node is deleted, this PHYSICAL-LINK is DELETED also
    required:
    - link-name
    properties:
      link-name:
        type: string
        description: e.g., hostnameA_p-connection_nameA_hostnameZ+p_connection-nameZ
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      circuit-id:
        type: string
        description: Circuit it
      dual-mode:
        type: string
        description: Dual access mode (e.g., primary, secondary
      management-option:
        type: string
        description: To provide information on who manages this circuit. A&AI or 3rd party transport provider
      service-provider-name:
        type: string
        description: Name of the service Provider on this link.
      service-provider-bandwidth-up-value:
        type: integer
        format: int32
        description: Upstream Bandwidth value agreed with the service provider
      service-provider-bandwidth-up-units:
        type: string
        description: Units for the upstream BW value
      service-provider-bandwidth-down-value:
        type: integer
        format: int32
        description: Downstream Bandwidth value agreed with the service provider
      service-provider-bandwidth-down-units:
        type: string
        description: Units for downstream BW value
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  physical-links:
    description: |
      Collection of physical connections, typically between p-interfaces
    properties:
      physical-link:
        type: array
        items:          
          $ref: "#/getDefinitions/physical-link"
  platform:
    description: |
      describes a platform
      ###### Related Nodes
      - TO generic-vnf( platform Uses generic-vnf, MANY2MANY)
      - TO l3-network( platform Uses l3-network, MANY2MANY)
    required:
    - platform-name
    properties:
      platform-name:
        type: string
        description: Name of the platform
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  platforms:
    description: |
      Collection of platforms
    properties:
      platform:
        type: array
        items:          
          $ref: "#/getDefinitions/platform"
  pnf:
    description: |
      PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE.
      ###### Related Nodes
      - TO complex( pnf LocatedIn complex, MANY2ONE)
      - TO ext-aai-network( pnf BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO instance-group( pnf MemberOf instance-group, MANY2MANY)
      - TO network-resource( pnf LinksTo network-resource, MANY2MANY)
      For CCVPN Usecase(4)
      - TO zone( pnf LocatedIn zone, MANY2ONE)
      - FROM configuration( configuration AppliesTo pnf, MANY2MANY)
      - FROM esr-thirdparty-sdnc( esr-thirdparty-sdnc AppliesTo pnf, ONE2MANY)
      - FROM generic-vnf( generic-vnf HostedOn pnf, MANY2MANY)
      - FROM lag-interface (CHILD of pnf, lag-interface BindsTo pnf, MANY2ONE)(1)
      - FROM logical-link( logical-link BridgedTo pnf, MANY2MANY)
      - FROM metadatum( metadatum AppliesTo pnf, MANY2MANY)
      AAI-2154 For BBS Usecase
      - FROM p-interface (CHILD of pnf, p-interface BindsTo pnf, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf pnf, ONE2MANY)
      - FROM software-version (CHILD of pnf, software-version BelongsTo pnf, MANY2ONE)
      - FROM vrf (CHILD of pnf, vrf BelongsTo pnf, MANY2ONE)
      A vrf belongs to a pnf.(1)

      -(1) IF this PNF node is deleted, this FROM node is DELETED also
      -(2) IF this PNF node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this PNF is DELETED also
      -PNF cannot be deleted if related to NETWORK-RESOURCE,SOFTWARE-VERSION
    required:
    - pnf-name
    - in-maint
    properties:
      pnf-name:
        type: string
        description: unique name of Physical Network Function.
      pnf-name2:
        type: string
        description: name of Physical Network Function.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details.
      pnf-name2-source:
        type: string
        description: source of name2
      pnf-id:
        type: string
        description: id of pnf
      equip-type:
        type: string
        description: Equipment type.  Source of truth should define valid values.
      equip-vendor:
        type: string
        description: Equipment vendor.  Source of truth should define valid values.
      equip-model:
        type: string
        description: Equipment model.  Source of truth should define valid values.
      management-option:
        type: string
        description: identifier of managed customer
      orchestration-status:
        type: string
        description: Orchestration status of this pnf
      ipaddress-v4-oam:
        type: string
        description: ipv4-oam-address with new naming convention for IP addresses
      sw-version:
        type: string
        description: sw-version is the version of SW for the hosted application on the PNF.
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      frame-id:
        type: string
        description: ID of the physical frame (relay rack) where pnf is installed.
      serial-number:
        type: string
        description: Serial number of the device
      ipaddress-v4-loopback-0:
        type: string
        description: IPV4 Loopback 0 address
      ipaddress-v6-loopback-0:
        type: string
        description: IPV6 Loopback 0 address
      ipaddress-v4-aim:
        type: string
        description: IPV4 AIM address
      ipaddress-v6-aim:
        type: string
        description: IPV6 AIM address
      ipaddress-v6-oam:
        type: string
        description: IPV6 OAM address
      inv-status:
        type: string
        description: CANOPI's inventory status.  Only set with values exactly as defined by CANOPI.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      prov-status:
        type: string
        description: Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]
      nf-role:
        type: string
        description: Nf Role is the role performed by this instance in the network.
      admin-status:
        type: string
        description: admin Status of this PNF
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: The ASDC model id for this resource  model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: The ASDC model version for this resource  model.
        also requires: model-invariant-id
      pnf-ipv4-address:
        type: string
        description: This is the IP address (IPv4) for the PNF itself. This is the IPv4 address that the PNF iself can be accessed at.
      pnf-ipv6-address:
        type: string
        description: This is the IP address (IPv6) for the PNF itself. This is the IPv6 address that the PNF iself can be accessed at.
      software-versions:
        type: array
        items:
          $ref: "#/getDefinitions/software-version"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      p-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/p-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/lag-interface"
      vrfs:
        type: array
        items:
          $ref: "#/getDefinitions/vrf"
  pnfs:
    description: |
      Collection of Physical Network Functions.
    properties:
      pnf:
        type: array
        items:          
          $ref: "#/getDefinitions/pnf"
  port-group:
    description: |
      Used to capture the network interfaces of this VCE
      ###### Related Nodes
      - TO vce (PARENT of port-group, port-group BelongsTo vce, MANY2ONE)(4)
      - FROM cvlan-tag (CHILD of port-group, cvlan-tag BelongsTo port-group, MANY2ONE)(1)

      -(1) IF this PORT-GROUP node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this PORT-GROUP is DELETED also
    required:
    - interface-id
    - orchestration-status
    properties:
      interface-id:
        type: string
        description: Unique ID of the interface
      neutron-network-id:
        type: string
        description: Neutron network id of this Interface
      neutron-network-name:
        type: string
        description: Neutron network name of this Interface
      interface-role:
        type: string
        description: Role assigned to this Interface, should use values as defined in ECOMP Yang models.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      port-group-id:
        type: string
        description: Unique ID for port group in vmware
      port-group-name:
        type: string
        description: Likely to duplicate value of neutron network name
      switch-name:
        type: string
        description: DVS or standard switch name (should be non-null for port groups associated with DVS)
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      cvlan-tags:
        type: array
        items:
          $ref: "#/getDefinitions/cvlan-tag-entry"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  port-groups:
    properties:
      port-group:
        type: array
        items:          
          $ref: "#/getDefinitions/port-group"
  project:
    description: |
      describes the project
      ###### Related Nodes
      - TO service-instance( project Uses service-instance, ONE2MANY)
    required:
    - project-name
    properties:
      project-name:
        type: string
        description: Name of the project deploying a service
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  projects:
    description: |
      Collection of projects
    properties:
      project:
        type: array
        items:          
          $ref: "#/getDefinitions/project"
  properties:
    description: |
      Property holder for query properties or instance properties
    properties:
      property-name:
        type: string
      property-value:
        type: string
  property-constraint:
    description: |
      TBD
      ###### Related Nodes
      - TO named-query-element (PARENT of property-constraint, property-constraint BelongsTo named-query-element, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this PROPERTY-CONSTRAINT is DELETED also
    required:
    - property-constraint-uuid
    - constraint-type
    - property-name
    - property-value
    properties:
      property-constraint-uuid:
        type: string
      constraint-type:
        type: string
      property-name:
        type: string
      property-value:
        type: string
      resource-version:
        type: string
  property-constraints:
    properties:
      property-constraint:
        type: array
        items:          
          $ref: "#/getDefinitions/property-constraint"
  pserver:
    description: |
      Compute host whose hostname must be unique and must exactly match what is sent as a relationship to a vserver.
      ###### Related Nodes
      - TO availability-zone( pserver MemberOf availability-zone, MANY2ONE)
      - TO cloud-region( pserver LocatedIn cloud-region, MANY2ONE)
      - TO complex( pserver LocatedIn complex, MANY2ONE)
      - TO group-assignment( pserver MemberOf group-assignment, MANY2ONE)
      - TO zone( pserver LocatedIn zone, MANY2ONE)
      - FROM flavor( flavor CanBeInstantiatedIn pserver, MANY2MANY)
      HPA Capacity getting the compute nodes from given flavor
      - FROM generic-vnf( generic-vnf HostedOn pserver, MANY2MANY)
      - FROM hpa-capacity (CHILD of pserver, hpa-capacity BelongsTo pserver, MANY2ONE)
      HPA Capacity KV for given compute node(1)
      - FROM lag-interface (CHILD of pserver, lag-interface BindsTo pserver, MANY2ONE)(1)
      - FROM logical-link( logical-link BridgedTo pserver, MANY2MANY)
      - FROM nos-server( nos-server HostedOn pserver, ONE2ONE)
      - FROM p-interface (CHILD of pserver, p-interface BindsTo pserver, MANY2ONE)(1)
      - FROM vserver( vserver HostedOn pserver, MANY2ONE)

      -(1) IF this PSERVER node is deleted, this FROM node is DELETED also
      -PSERVER cannot be deleted if related to GROUP-ASSIGNMENT,GENERIC-VNF,LOGICAL-LINK,NOS-SERVER,VSERVER
    required:
    - hostname
    - in-maint
    properties:
      hostname:
        type: string
        description: Value from executing hostname on the compute node.
      ptnii-equip-name:
        type: string
        description: PTNII name
      number-of-cpus:
        type: integer
        format: int32
        description: Number of cpus
      disk-in-gigabytes:
        type: integer
        format: int32
        description: Disk size, in GBs
      ram-in-megabytes:
        type: integer
        format: int32
        description: RAM size, in MBs
      equip-type:
        type: string
        description: Equipment type.  Source of truth should define valid values.
      equip-vendor:
        type: string
        description: Equipment vendor.  Source of truth should define valid values.
      equip-model:
        type: string
        description: Equipment model.  Source of truth should define valid values.
      fqdn:
        type: string
        description: Fully-qualified domain name
      pserver-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      ipv4-oam-address:
        type: string
        description: Used to configure device, also used for troubleshooting and is IP used for traps generated by device.
      serial-number:
        type: string
        description: Serial number, may be queried
      ipaddress-v4-loopback-0:
        type: string
        description: IPV4 Loopback 0 address
      ipaddress-v6-loopback-0:
        type: string
        description: IPV6 Loopback 0 address
      ipaddress-v4-aim:
        type: string
        description: IPV4 AIM address
      ipaddress-v6-aim:
        type: string
        description: IPV6 AIM address
      ipaddress-v6-oam:
        type: string
        description: IPV6 OAM address
      inv-status:
        type: string
        description: CANOPI's inventory status.  Only set with values exactly as defined by CANOPI.
      pserver-id:
        type: string
        description: ID of Pserver
      internet-topology:
        type: string
        description: internet topology of Pserver
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      pserver-name2:
        type: string
        description: alternative pserver name
      purpose:
        type: string
        description: purpose of pserver
      prov-status:
        type: string
        description: Prov Status of this device (not under canopi control) Valid values [PREPROV/NVTPROV/PROV]
      management-option:
        type: string
        description: Indicates who owns and or manages the device.
      host-profile:
        type: string
        description: The host profile that defines the configuration of the pserver.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      p-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/p-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/lag-interface"
      hpa-capacity:
        type: array
        items:          
          $ref: "#/getDefinitions/hpa-capacity"
  pservers:
    description: |
      Collection of compute hosts.
    properties:
      pserver:
        type: array
        items:          
          $ref: "#/getDefinitions/pserver"
  query-parameters:
    description: |
      QueryParameters for performing a named-query or model query
    properties:
      named-query:
        type: object
        $ref: "#/getDefinitions/named-query"
      overloaded-model:
        type: object
        $ref: "#/getDefinitions/overloaded-model"
  related-lookup:
    description: |
      TBD
      ###### Related Nodes
      - TO named-query-element (PARENT of related-lookup, related-lookup BelongsTo named-query-element, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this RELATED-LOOKUP is DELETED also
    required:
    - related-lookup-uuid
    - source-node-type
    - source-node-property
    - target-node-type
    - target-node-property
    properties:
      related-lookup-uuid:
        type: string
      source-node-type:
        type: string
      source-node-property:
        type: string
      target-node-type:
        type: string
      target-node-property:
        type: string
      property-collect-list:
        type: string
      resource-version:
        type: string
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  related-lookups:
    properties:
      related-lookup:
        type: array
        items:          
          $ref: "#/getDefinitions/related-lookup"
  related-to-property:
    properties:
      property-key:
        type: string
        description: Key part of a key/value pair
      property-value:
        type: string
        description: Value part of a key/value pair
  relationship:
    description: |
      dictionary of relationship
    type: object
    properties:
      relationship:
        type: array
        items:
          $ref: "#/getDefinitions/relationship-dict"
  relationship-data:
    required:
    - relationship-key
    - relationship-value
    properties:
      relationship-key:
        type: string
        description: A keyword provided by A&AI to indicate an attribute.
      relationship-value:
        type: string
        description: Value of the attribute.
  relationship-dict:
    properties:
      related-to:
        type: string
        description: A keyword provided by A&AI to indicate type of node.
      relationship-label:
        type: string
        description: The edge label for this relationship.
      related-link:
        type: string
        description: URL to the object in A&AI.
      relationship-data:
        type: array
        items:          
          $ref: "#/getDefinitions/relationship-data"
      related-to-property:
        type: array
        items:          
          $ref: "#/getDefinitions/related-to-property"
  relationship-list:
    properties:
      relationship:
        type: array
        items:          
          $ref: "#/getDefinitions/relationship"
  reserved-prop-names:
    description: |
      Internal map to define some reserved properties of a vertex
    properties:
      last-mod-source-of-truth:
        type: string
      aai-node-type:
        type: string
      aai-created-ts:
        type: integer
        format: int64
      aai-unique-key:
        type: string
      aai-last-mod-ts:
        type: integer
        format: int64
      source-of-truth:
        type: string
      aai-uri:
        type: string
  response-list:
    description: |
      Response container for the results of a named-query or model query
    properties:
      inventory-response-items:
        type: object
        $ref: "#/getDefinitions/inventory-response-items"
  result-data:
    properties:
      resource-type:
        type: string
        description: The specific type of node in the A&AI graph
      resource-link:
        type: string
        description: The URL to the specific resource
  route-table-reference:
    description: |
      Openstack route table reference.
      ###### Related Nodes
      - FROM l3-network( l3-network Uses route-table-reference, MANY2MANY)
    required:
    - route-table-reference-id
    - route-table-reference-fqdn
    properties:
      route-table-reference-id:
        type: string
        description: Route Table Reference id, UUID assigned to this instance.
      route-table-reference-fqdn:
        type: string
        description: FQDN entry in the route table.
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  route-table-references:
    description: |
      Collection of openstack route table references
    properties:
      route-table-reference:
        type: array
        items:          
          $ref: "#/getDefinitions/route-table-reference"
  route-target:
    description: |
      Route target information
      ###### Related Nodes
      - TO vpn-binding (PARENT of route-target, route-target BelongsTo vpn-binding, MANY2ONE)(4)
      - TO vrf (PARENT of route-target, route-target BelongsTo vrf, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this ROUTE-TARGET is DELETED also
    required:
    - global-route-target
    - route-target-role
    properties:
      global-route-target:
        type: string
        description: Number used to identify an RT, globally unique in the network
      route-target-role:
        type: string
        description: Role assigned to this route target
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  route-targets:
    description: |
      Collection of route target information
    properties:
      route-target:
        type: array
        items:          
          $ref: "#/getDefinitions/route-target"
  routing-instance:
    description: |
      ###### Related Nodes
      - TO site-pair-set (PARENT of routing-instance, routing-instance BelongsTo site-pair-set, MANY2ONE)(4)
      - FROM site-pair (CHILD of routing-instance, site-pair BelongsTo routing-instance, MANY2ONE)(1)

      -(1) IF this ROUTING-INSTANCE node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this ROUTING-INSTANCE is DELETED also
    required:
    - routing-instance-id
    properties:
      routing-instance-id:
        type: string
        description: Unique id of routing instance
      rpm-owner:
        type: string
        description: rpm owner
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      site-pairs:
        type: array
        items:
          $ref: "#/getDefinitions/site-pair"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  routing-instances:
    description: |
      set of probes related to generic-vnf routing instance
    properties:
      routing-instance:
        type: array
        items:          
          $ref: "#/getDefinitions/routing-instance"
  sdn-zone-response:
    properties:
      oam-networks:
        type: object
        $ref: "#/getDefinitions/oam-networks"
      az-and-dvs-switches:
        type: array
        items:          
          $ref: "#/getDefinitions/az-and-dvs-switches"
  sdwan-vpn:
    description: |
      Instance of an sdwan-vpn
      ###### Related Nodes
      - TO ext-aai-network( sdwan-vpn BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( sdwan-vpn PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - TO tenant( sdwan-vpn PartOf tenant, ONE2MANY)
      For CCVPN Usecase
      - TO vpn-binding( sdwan-vpn PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this SDWAN-VPN node is deleted, this TO node is DELETED also
    required:
    - sdwan-vpn-id
    properties:
      sdwan-vpn-id:
        type: string
        description: Uniquely identifies this sdwan-vpn by id
      sdwan-vpn-name:
        type: string
        description: Store the name of this sdwan-vpn.
      vxlan-id:
        type: string
        description: Store the vxlan-id of this sdwan-vpn.
      topology:
        type: string
        description: Store the topology of this sdwan-vpn.
      tenant-id:
        type: string
        description: Store the tenant-id of this sdwan-vpn.
      vpn-id:
        type: string
        description: Store the vpn-id of this sdwan-vpn.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  sdwan-vpns:
    description: |
      Collection of sdwan-vpns
    properties:
      sdwan-vpn:
        type: array
        items:          
          $ref: "#/getDefinitions/sdwan-vpn"
  search:
    properties:
      edge-tag-query-result:
        type: object
        $ref: "#/getDefinitions/edge-tag-query-result"
      edge-tag-query-request:
        type: object
        $ref: "#/getDefinitions/edge-tag-query-request"
      search-results:
        type: object
        $ref: "#/getDefinitions/search-results"
      sdn-zone-response:
        type: object
        $ref: "#/getDefinitions/sdn-zone-response"
  search-results:
    properties:
      result-data:
        type: array
        items:          
          $ref: "#/getDefinitions/result-data"
  secondary-filt:
    description: |
      SecondaryFilt for performing a named-query or model query
  secondary-filter:
    properties:
      property-name:
        type: string
      filter-type:
        type: string
      property-value:
        type: string
  secondary-filts:
    description: |
      SecondaryFilts for performing a named-query or model query
    properties:
      secondary-filt:
        type: array
        items:          
          $ref: "#/getDefinitions/secondary-filt"
  segmentation-assignment:
    description: |
      Openstack segmentation assignment.
      ###### Related Nodes
      - TO l3-network (PARENT of segmentation-assignment, segmentation-assignment BelongsTo l3-network, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this SEGMENTATION-ASSIGNMENT is DELETED also
    required:
    - segmentation-id
    properties:
      segmentation-id:
        type: string
        description: Route Table Reference id, UUID assigned to this instance.
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  segmentation-assignments:
    description: |
      Collection of openstack segmentation assignments
    properties:
      segmentation-assignment:
        type: array
        items:          
          $ref: "#/getDefinitions/segmentation-assignment"
  service:
    description: |
      Stand-in for service model definitions.  Likely to be deprecated in favor of models from ASDC.  Does not strictly map to ASDC services.
    required:
    - service-id
    - service-description
    properties:
      service-id:
        type: string
        description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
      service-description:
        type: string
        description: Description of the service
      service-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      service-version:
        type: string
        description: service version
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  service-capabilities:
    description: |
      Collection of service capabilities.
    properties:
      service-capability:
        type: array
        items:          
          $ref: "#/getDefinitions/service-capability"
  service-capability:
    description: |
      Early definition of server/resource pairings, likely to be replaced by models.  No new use should be made of this.
      ###### Related Nodes
      - FROM availability-zone( availability-zone AppliesTo service-capability, MANY2MANY)
      - FROM oam-network( oam-network AppliesTo service-capability, MANY2MANY)

      -SERVICE-CAPABILITY cannot be deleted if related to AVAILABILITY-ZONE,OAM-NETWORK
    required:
    - service-type
    - vnf-type
    properties:
      service-type:
        type: string
        description: This gets defined by others to provide a unique ID for the service, we accept what is sent.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  service-design-and-creation:
    description: |
      Namespace for objects managed by ASDC
    properties:
      vnf-images:
        type: array
        items:
          $ref: "#/getDefinitions/vnf-image"
      services:
        type: array
        items:
          $ref: "#/getDefinitions/service"
      service-capabilities:
        type: array
        items:
          $ref: "#/getDefinitions/service-capability"
      models:
        type: array
        items:
          $ref: "#/getDefinitions/model"
      named-queries:
        type: array
        items:
          $ref: "#/getDefinitions/named-query"
  service-instance:
    description: |
      Instance of a service
      ###### Related Nodes
      - TO allotted-resource( service-instance Uses allotted-resource, MANY2MANY)
      - TO collection( service-instance ComposedOf collection, ONE2ONE)
      - TO configuration( service-instance Uses configuration, ONE2MANY)
      - TO configuration( service-instance ComposedOf configuration, MANY2MANY)
      - TO connector( service-instance Uses connector, MANY2MANY)
      - TO ctag-assignment( service-instance Uses ctag-assignment, ONE2MANY)
      - TO cvlan-tag( service-instance ComposedOf cvlan-tag, MANY2MANY)
      - TO generic-vnf( service-instance ComposedOf generic-vnf, ONE2MANY)
      - TO instance-group( service-instance Uses instance-group, ONE2MANY)
      MSO creates this edge on VNF Group Service creation
      - TO instance-group( service-instance MemberOf instance-group, MANY2MANY)
      - TO l3-network( service-instance ComposedOf l3-network, ONE2MANY)
      - TO logical-link( service-instance Uses logical-link, MANY2MANY)(2)
      - TO owning-entity( service-instance BelongsTo owning-entity, MANY2ONE)
      - TO pnf( service-instance ComposedOf pnf, ONE2MANY)
      - TO service-instance( service-instance ComposedOf service-instance, ONE2MANY)
      - TO service-subscription (PARENT of service-instance, service-instance BelongsTo service-subscription, MANY2ONE)(4)
      - TO vce( service-instance ComposedOf vce, ONE2MANY)
      - TO vlan( service-instance ComposedOf vlan, ONE2MANY)
      - TO zone( service-instance LocatedIn zone, MANY2ONE)
      - FROM allotted-resource (CHILD of service-instance, allotted-resource BelongsTo service-instance, MANY2ONE)(1)
      - FROM connectivity( connectivity PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM device( device PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM forwarding-path( forwarding-path AppliesTo service-instance, MANY2ONE)(1)
      - FROM lan-port-config( lan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM metadatum (CHILD of service-instance, metadatum BelongsTo service-instance, MANY2ONE)(1)
      - FROM project( project Uses service-instance, ONE2MANY)
      - FROM sdwan-vpn( sdwan-vpn PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM service-instance( service-instance ComposedOf service-instance, ONE2MANY)
      - FROM site-resource( site-resource PartOf service-instance, MANY2MANY)
      For CCVPN Usecase
      - FROM sp-partner( sp-partner PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
      - FROM wan-port-config( wan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(1) IF this SERVICE-INSTANCE node is deleted, this FROM node is DELETED also
      -(2) IF this SERVICE-INSTANCE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this SERVICE-INSTANCE is DELETED also
    required:
    - service-instance-id
    properties:
      service-instance-id:
        type: string
        description: Uniquely identifies this instance of a service
      service-instance-name:
        type: string
        description: This field will store a name assigned to the service-instance.
      service-type:
        type: string
        description: String capturing type of service.
      service-role:
        type: string
        description: String capturing the service role.
      environment-context:
        type: string
        description: This field will store the environment context assigned to the service-instance.
      workload-context:
        type: string
        description: This field will store the workload context assigned to the service-instance.
      created-at:
        type: string
        description: create time of Network Service.
      updated-at:
        type: string
        description: last update of Network Service.
      description:
        type: string
        description: short description for service-instance.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      bandwidth-total:
        type: string
        description: Indicates the total bandwidth to be used for this service.
      vhn-portal-url:
        type: string
        description: URL customers will use to access the vHN Portal.
      service-instance-location-id:
        type: string
        description: An identifier that customers assign to the location where this service is being used.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      selflink:
        type: string
        description: Path to the controller object.
      orchestration-status:
        type: string
        description: Orchestration status of this service.
      input-parameters:
        type: string
        description: String capturing request parameters from SO to pass to Closed Loop.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      metadata:
        type: array
        items:
          $ref: "#/getDefinitions/metadatum"
      allotted-resources:
        type: array
        items:
          $ref: "#/getDefinitions/allotted-resource"
  service-instances:
    description: |
      Collection of service instances
    properties:
      service-instance:
        type: array
        items:          
          $ref: "#/getDefinitions/service-instance"
  service-subscription:
    description: |
      Object that group service instances.
      ###### Related Nodes
      - TO customer (PARENT of service-subscription, service-subscription BelongsTo customer, MANY2ONE)(4)
      - TO tenant( service-subscription Uses tenant, MANY2MANY)
      - FROM service-instance (CHILD of service-subscription, service-instance BelongsTo service-subscription, MANY2ONE)(1)

      -(1) IF this SERVICE-SUBSCRIPTION node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SERVICE-SUBSCRIPTION is DELETED also
    required:
    - service-type
    properties:
      service-type:
        type: string
        description: Value defined by orchestration to identify this service across ONAP.
      temp-ub-sub-account-id:
        type: string
        description: This property will be deleted from A&AI in the near future. Only stop gap solution.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      service-instances:
        type: array
        items:
          $ref: "#/getDefinitions/service-instance"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  service-subscriptions:
    description: |
      Collection of objects that group service instances.
    properties:
      service-subscription:
        type: array
        items:          
          $ref: "#/getDefinitions/service-subscription"
  services:
    description: |
      Collection of service model definitions.  Likely to be deprecated in favor of models from ASDC.
    properties:
      service:
        type: array
        items:          
          $ref: "#/getDefinitions/service"
  site-pair:
    description: |
      ###### Related Nodes
      - TO routing-instance (PARENT of site-pair, site-pair BelongsTo routing-instance, MANY2ONE)(4)
      - FROM class-of-service (CHILD of site-pair, class-of-service BelongsTo site-pair, MANY2ONE)(1)

      -(1) IF this SITE-PAIR node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SITE-PAIR is DELETED also
    required:
    - site-pair-id
    properties:
      site-pair-id:
        type: string
        description: unique identifier of probe
      source-ip:
        type: string
        description: Prefix address
      destination-ip:
        type: string
        description: Prefix address
      ip-version:
        type: string
        description: ip version, v4, v6
      destination-hostname:
        type: string
        description: Hostname of the destination equipment to which SLAs are measured against.
      destination-equip-type:
        type: string
        description: The type of destinatination equipment. Could be Router, UCPE, etc.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      classes-of-service:
        type: array
        items:
          $ref: "#/getDefinitions/class-of-service"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  site-pair-set:
    description: |
      Set of instances for probes used to measure service level agreements
      ###### Related Nodes
      - TO generic-vnf( site-pair-set AppliesTo generic-vnf, MANY2MANY)
      - FROM routing-instance (CHILD of site-pair-set, routing-instance BelongsTo site-pair-set, MANY2ONE)(1)

      -(1) IF this SITE-PAIR-SET node is deleted, this FROM node is DELETED also
    required:
    - site-pair-set-id
    properties:
      site-pair-set-id:
        type: string
        description: Unique id of site pair set.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      routing-instances:
        type: array
        items:
          $ref: "#/getDefinitions/routing-instance"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  site-pair-sets:
    description: |
      Collection of sets of instances for probes related to generic-vnf
    properties:
      site-pair-set:
        type: array
        items:          
          $ref: "#/getDefinitions/site-pair-set"
  site-pairs:
    description: |
      probe within a set
    properties:
      site-pair:
        type: array
        items:          
          $ref: "#/getDefinitions/site-pair"
  site-resource:
    description: |
      Instance of a site-resource
      ###### Related Nodes
      - TO allotted-resource( site-resource Uses allotted-resource, MANY2MANY)
      For CCVPN Usecase
      - TO complex( site-resource Uses complex, MANY2MANY)
      For CCVPN Usecase
      - TO ext-aai-network( site-resource BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( site-resource PartOf service-instance, MANY2MANY)
      For CCVPN Usecase

      -(2) IF this SITE-RESOURCE node is deleted, this TO node is DELETED also
    required:
    - site-resource-id
    properties:
      site-resource-id:
        type: string
        description: Uniquely identifies this site-resource by id
      site-resource-name:
        type: string
        description: Store the name of this site-resource.
      description:
        type: string
        description: Store the description of this site-resource.
      type:
        type: string
        description: Store the type of this site-resource.
      role:
        type: string
        description: Store the role of this site-resource.
      generated-site-id:
        type: string
        description: Store the generated-site-id of this site-resource.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  site-resources:
    description: |
      Collection of site-resources
    properties:
      site-resource:
        type: array
        items:          
          $ref: "#/getDefinitions/site-resource"
  snapshot:
    description: |
      Openstack snapshot
      ###### Related Nodes
      - TO cloud-region (PARENT of snapshot, snapshot BelongsTo cloud-region, MANY2ONE)
      - FROM vserver( vserver Uses snapshot, ONE2ONE)
    required:
    - snapshot-id
    properties:
      snapshot-id:
        type: string
        description: Snapshot id, this is the key UUID assoc associated in glance with the snapshots.
      snapshot-name:
        type: string
        description: Snapshot name
      snapshot-architecture:
        type: string
        description: Operating system architecture
      snapshot-os-distro:
        type: string
        description: The common name of the operating system distribution in lowercase
      snapshot-os-version:
        type: string
        description: The operating system version as specified by the distributor.
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      snapshot-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      prev-snapshot-id:
        type: string
        description: This field contains the UUID of the previous snapshot (if any).
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  snapshots:
    description: |
      Collection of openstack snapshots
    properties:
      snapshot:
        type: array
        items:          
          $ref: "#/getDefinitions/snapshot"
  software-version:
    description: |
      Software Version
      ###### Related Nodes
      - TO pnf (PARENT of software-version, software-version BelongsTo pnf, MANY2ONE)
    required:
    - software-version-id
    - is-active-sw-ver
    properties:
      software-version-id:
        type: string
        description: Identifier of the software version
      is-active-sw-ver:
        type: boolean
        description: used to indicate whether or not this software-version is the active one (activeSw = true)
  software-versions:
    description: |
      Collection of software versions.
    properties:
      software-version:
        type: array
        items:          
          $ref: "#/getDefinitions/software-version"
  sp-partner:
    description: |
      Instance of an sp-partner
      ###### Related Nodes
      - TO service-instance( sp-partner PartOf service-instance, ONE2MANY)
      For CCVPN Usecase
    required:
    - sp-partner-id
    properties:
      sp-partner-id:
        type: string
        description: Uniquely identifies this sp-partner by id
      url:
        type: string
        description: Store the URL of this sp-partner.
      callsource:
        type: string
        description: Store the callsource of this sp-partner.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      operational-status:
        type: string
        description: Store the operational-status for this sp-partner.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this sp-partner.
      model-invariant-id:
        type: string
        description: the ASDC model id for this sp-partner model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this sp-partner model.
        also requires: model-invariant-id
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  sp-partners:
    description: |
      Collection of sp-partners
    properties:
      sp-partner:
        type: array
        items:          
          $ref: "#/getDefinitions/sp-partner"
  sriov-pf:
    description: |
      SR-IOV Physical Function
      ###### Related Nodes
      - TO p-interface (PARENT of sriov-pf, sriov-pf BelongsTo p-interface, ONE2ONE)(4)
      - FROM sriov-vf( sriov-vf Uses sriov-pf, MANY2ONE)

      -(4) IF this TO node is deleted, this SRIOV-PF is DELETED also
    required:
    - pf-pci-id
    properties:
      pf-pci-id:
        type: string
        description: Identifier for the sriov-pf
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  sriov-pfs:
    description: |
      Collection of SR-IOV Physical Functions.
    properties:
      sriov-pf:
        type: array
        items:          
          $ref: "#/getDefinitions/sriov-pf"
  sriov-vf:
    description: |
      SR-IOV Virtual Function (not to be confused with virtual network function)
      ###### Related Nodes
      - TO l-interface (PARENT of sriov-vf, sriov-vf BelongsTo l-interface, ONE2ONE)(4)
      - TO sriov-pf( sriov-vf Uses sriov-pf, MANY2ONE)

      -(4) IF this TO node is deleted, this SRIOV-VF is DELETED also
    required:
    - pci-id
    properties:
      pci-id:
        type: string
        description: PCI ID used to identify the sriov-vf
      vf-vlan-filter:
        type: string
        description: This metadata provides option to specify list of VLAN filters applied on VF to pass the traffic to VM.
      vf-mac-filter:
        type: string
        description: When MAC filters are specified, VF-agent service configures VFs to do MAC level filtering before the traffic is passed to VM.
      vf-vlan-strip:
        type: boolean
        description: When this field is set to true, VF will configured to strip the outer TAG before the traffic is passed to VM.
      vf-vlan-anti-spoof-check:
        type: boolean
        description: This option ensures anti VLAN spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs.
      vf-mac-anti-spoof-check:
        type: boolean
        description: This option ensures anti MAC spoof checks are done at the VF level to comply with security. The disable check will also be honored per the VNF needs for trusted VMs.
      vf-mirrors:
        type: string
        description: This option defines the set of Mirror objects which essentially mirrors the traffic from source to set of collector VNF Ports.
      vf-broadcast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows all broadcast traffic to reach the VM
      vf-unknown-multicast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows unknown multicast traffic to reach the VM
      vf-unknown-unicast-allow:
        type: boolean
        description: This option, if set to true, sets the VF in promiscuous mode and allows unknown unicast traffic to reach the VM
      vf-insert-stag:
        type: boolean
        description: This option, if set to true, instructs to insert outer tag after traffic comes out of VM.
      vf-link-status:
        type: string
        description: This option is used to set the link status.  Valid values as of 1607 are on, off, and auto.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  sriov-vfs:
    description: |
      Collection of SR-IOV Virtual Functions.
    properties:
      sriov-vf:
        type: array
        items:          
          $ref: "#/getDefinitions/sriov-vf"
  start-node-filter:
    properties:
      property-name:
        type: string
      property-value:
        type: string
  subnet:
    description: |
      ###### Related Nodes
      - TO l3-network (PARENT of subnet, subnet BelongsTo l3-network, MANY2ONE)(4)
      - FROM host-route (CHILD of subnet, host-route BelongsTo subnet, MANY2ONE)(1)
      - FROM l3-interface-ipv4-address-list( l3-interface-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM l3-interface-ipv6-address-list( l3-interface-ipv6-address-list MemberOf subnet, MANY2MANY)
      - FROM vip-ipv4-address-list( vip-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM vip-ipv6-address-list( vip-ipv6-address-list MemberOf subnet, MANY2MANY)

      -(1) IF this SUBNET node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this SUBNET is DELETED also
      -SUBNET cannot be deleted if related to L3-INTERFACE-IPV4-ADDRESS-LIST,L3-INTERFACE-IPV6-ADDRESS-LIST,VIP-IPV4-ADDRESS-LIST,VIP-IPV6-ADDRESS-LIST
    required:
    - subnet-id
    - dhcp-enabled
    properties:
      subnet-id:
        type: string
        description: Subnet ID, should be UUID.
      subnet-name:
        type: string
        description: Name associated with the subnet.
      neutron-subnet-id:
        type: string
        description: Neutron id of this subnet
      gateway-address:
        type: string
        description: gateway ip address
      network-start-address:
        type: string
        description: network start address
      cidr-mask:
        type: string
        description: cidr mask
      ip-version:
        type: string
        description: ip version
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      dhcp-enabled:
        type: boolean
        description: dhcp enabled
      dhcp-start:
        type: string
        description: the start address reserved for use by dhcp
      dhcp-end:
        type: string
        description: the last address reserved for use by dhcp
      subnet-role:
        type: string
        description: role of the subnet, referenced when assigning IPs
      ip-assignment-direction:
        type: string
        description: ip address assignment direction of the subnet
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      subnet-sequence:
        type: integer
        format: int32
        description: sequence of the subnet
      host-routes:
        type: array
        items:
          $ref: "#/getDefinitions/host-route"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  subnets:
    properties:
      subnet:
        type: array
        items:          
          $ref: "#/getDefinitions/subnet"
  tagged-inventory-item-list:
    properties:
      inventory-item:
        type: array
        items:          
          $ref: "#/getDefinitions/inventory-item"
  tenant:
    description: |
      Openstack tenant
      ###### Related Nodes
      - TO cloud-region (PARENT of tenant, tenant BelongsTo cloud-region, MANY2ONE)
      - TO group-assignment( tenant MemberOf group-assignment, MANY2MANY)
      - TO l3-network( tenant Uses l3-network, MANY2MANY)
      - TO volume-group( tenant DependsOn volume-group, ONE2MANY)
      - FROM generic-vnf( generic-vnf BelongsTo tenant, MANY2ONE)
      - FROM nos-server (CHILD of tenant, nos-server BelongsTo tenant, MANY2ONE)
      - FROM sdwan-vpn( sdwan-vpn PartOf tenant, ONE2MANY)
      For CCVPN Usecase
      - FROM service-subscription( service-subscription Uses tenant, MANY2MANY)
      - FROM vserver (CHILD of tenant, vserver BelongsTo tenant, MANY2ONE)

      -TENANT cannot be deleted if related to NOS-SERVER,VSERVER
    required:
    - tenant-id
    - tenant-name
    properties:
      tenant-id:
        type: string
        description: Unique id relative to the cloud-region.
      tenant-name:
        type: string
        description: Readable name of tenant
      tenant-context:
        type: string
        description: This field will store the tenant context.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      vservers:
        type: array
        items:
          $ref: "#/getDefinitions/vserver"
      nos-servers:
        type: array
        items:
          $ref: "#/getDefinitions/nos-server"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  tenants:
    description: |
      Collection of openstack tenants.
    properties:
      tenant:
        type: array
        items:          
          $ref: "#/getDefinitions/tenant"
  tunnel-xconnect:
    description: |
      Represents the specifics of a tunnel cross connect piece of a resource that gets separately allotted
      ###### Related Nodes
      - TO allotted-resource (PARENT of tunnel-xconnect, tunnel-xconnect BelongsTo allotted-resource, ONE2ONE)(4)

      -(4) IF this TO node is deleted, this TUNNEL-XCONNECT is DELETED also
    required:
    - id
    properties:
      id:
        type: string
        description: Allotted Resource id UUID assigned to this instance.
      resource-version:
        type: string
        description: Concurrency value
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  tunnel-xconnects:
    description: |
      This object is used to store the specific tunnel cross connect aspects of an allotted resource
    properties:
      tunnel-xconnect:
        type: array
        items:          
          $ref: "#/getDefinitions/tunnel-xconnect"
  update:
    description: |
      Serves a PATCH like function.  Does not enforce concurrency control.  Clear each usage with AAI team.
    required:
    - update-node-type
    properties:
      update-node-type:
        type: string
      update-node-key:
        type: array
        items:          
          $ref: "#/getDefinitions/update-node-key"
      update-node-uri:
        type: string
      action:
        type: array
        items:          
          $ref: "#/getDefinitions/action"
  update-node-key:
    properties:
      key-name:
        type: string
      key-value:
        type: string
  vce:
    description: |
      Virtual Customer Edge Router, used specifically for Gamma.  This object is deprecated.
      ###### Related Nodes
      - TO availability-zone( vce Uses availability-zone, MANY2MANY)
      - TO complex( vce LocatedIn complex, MANY2MANY)
      - TO vserver( vce HostedOn vserver, ONE2MANY)
      - FROM entitlement (CHILD of vce, entitlement BelongsTo vce, MANY2ONE)(1)
      - FROM license (CHILD of vce, license BelongsTo vce, MANY2ONE)(1)
      - FROM port-group (CHILD of vce, port-group BelongsTo vce, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf vce, ONE2MANY)

      -(1) IF this VCE node is deleted, this FROM node is DELETED also
    required:
    - vnf-id
    - vnf-name
    - vnf-type
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
      vnf-name:
        type: string
        description: Name of VNF.
      vnf-name2:
        type: string
        description: Alternate name of VNF.
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      service-id:
        type: string
        description: Unique identifier of service, does not strictly map to ASDC services, SOON TO BE DEPRECATED.
      regional-resource-zone:
        type: string
        description: Regional way of organizing pservers, source of truth should define values
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      operational-status:
        type: string
        description: Indicator for whether the resource is considered operational
      license-key:
        type: string
        description: OBSOLETE -  do not use
      equipment-role:
        type: string
        description: Network role being played by this VNF
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by MSO
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance, managed by MSO
      mso-catalog-key:
        type: string
        description: Corresponds to the SDN-C catalog id used to configure this VCE
      vpe-id:
        type: string
        description: Unique ID of VPE connected to this VCE.
      v6-vce-wan-address:
        type: string
        description: Valid v6 IP address for the WAN Link on this router.  Implied length of /64.
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure vce, also used for troubleshooting and is IP used for traps generated by VCE.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      ipv4-loopback0-address:
        type: string
        description: Loopback0 address
      entitlement-resource-uuid:
        type: string
        description: OBSOLETE -  see child relationships
      port-groups:
        type: array
        items:
          $ref: "#/getDefinitions/port-group"
      licenses:
        type: array
        items:
          $ref: "#/getDefinitions/license"
      entitlements:
        type: array
        items:
          $ref: "#/getDefinitions/entitlement"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  vces:
    description: |
      Collection of Virtual Customer Edge Routers, used specifically for Gamma.  This object is deprecated.
    properties:
      vce:
        type: array
        items:          
          $ref: "#/getDefinitions/vce"
  vf-module:
    description: |
      a deployment unit of VNFCs
      ###### Related Nodes
      - TO generic-vnf (PARENT of vf-module, vf-module BelongsTo generic-vnf, MANY2ONE)(4)
      - TO l3-network( vf-module DependsOn l3-network, MANY2MANY)
      - TO vnfc( vf-module Uses vnfc, ONE2MANY)(2)
      - TO volume-group( vf-module Uses volume-group, ONE2ONE)
      - TO vserver( vf-module Uses vserver, ONE2MANY)

      -(2) IF this VF-MODULE node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this VF-MODULE is DELETED also
    required:
    - vf-module-id
    - is-base-vf-module
    - automated-assignment
    properties:
      vf-module-id:
        type: string
        description: Unique ID of vf-module.
      vf-module-name:
        type: string
        description: Name of vf-module
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this instance.
      orchestration-status:
        type: string
        description: orchestration status of this vf-module, mastered by MSO
      is-base-vf-module:
        type: boolean
        description: used to indicate whether or not this object is base vf module
      automated-assignment:
        type: boolean
        description: Indicates whether vf-module assignment was done via automation or manually
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      persona-model-version:
        type: string
        description: the ASDC model version for this resource or service model.
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      widget-model-id:
        type: string
        description: the ASDC data dictionary widget model. This maps directly to the A&AI widget.
      widget-model-version:
        type: string
        description: the ASDC data dictionary version of the widget model.This maps directly to the A&AI version of the widget.
      contrail-service-instance-fqdn:
        type: string
        description: the Contrail unique ID for a service-instance
      module-index:
        type: integer
        format: int32
        description: the index will track the number of modules of a given type that have been deployed in a VNF, starting with 0, and always choosing the lowest available digit
      selflink:
        type: string
        description: Path to the controller object.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  vf-modules:
    description: |
      Collection of vf-modules, a deployment unit of VNFCs
    properties:
      vf-module:
        type: array
        items:          
          $ref: "#/getDefinitions/vf-module"
  vig-server:
    description: |
      vig-server contains information about a vig server used for IPSec-configuration. Populated by SDN-C from 1607
      ###### Related Nodes
      - TO ipsec-configuration (PARENT of vig-server, vig-server BelongsTo ipsec-configuration, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this VIG-SERVER is DELETED also
    required:
    - vig-address-type
    properties:
      vig-address-type:
        type: string
        description: indicates whether the VIG is for AVPN or INTERNET
      ipaddress-v4-vig:
        type: string
        description: v4 IP of the vig server
      ipaddress-v6-vig:
        type: string
        description: v6 IP of the vig server
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  vig-servers:
    properties:
      vig-server:
        type: array
        items:          
          $ref: "#/getDefinitions/vig-server"
  vip-ipv4-address-list:
    description: |
      IPv4 Address Range
      ###### Related Nodes
      - TO cloud-region (PARENT of vip-ipv4-address-list, vip-ipv4-address-list BelongsTo cloud-region, MANY2ONE)
      - TO cp( vip-ipv4-address-list Uses cp, MANY2MANY)
      - TO instance-group( vip-ipv4-address-list MemberOf instance-group, MANY2MANY)
      - TO subnet( vip-ipv4-address-list MemberOf subnet, MANY2MANY)
      - FROM vnfc( vnfc Uses vip-ipv4-address-list, MANY2MANY)
    required:
    - vip-ipv4-address
    properties:
      vip-ipv4-address:
        type: string
        description: IP address
      vip-ipv4-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 32 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  vip-ipv6-address-list:
    description: |
      IPv6 Address Range
      ###### Related Nodes
      - TO cloud-region (PARENT of vip-ipv6-address-list, vip-ipv6-address-list BelongsTo cloud-region, MANY2ONE)
      - TO cp( vip-ipv6-address-list Uses cp, MANY2MANY)
      - TO instance-group( vip-ipv6-address-list MemberOf instance-group, MANY2MANY)
      - TO subnet( vip-ipv6-address-list MemberOf subnet, MANY2MANY)
      - FROM vnfc( vnfc Uses vip-ipv6-address-list, MANY2MANY)
    required:
    - vip-ipv6-address
    properties:
      vip-ipv6-address:
        type: string
        description: IP address
      vip-ipv6-prefix-length:
        type: integer
        format: int64
        description: Prefix length, 128 for single address
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      is-floating:
        type: boolean
        description: Indicator of fixed or floating address
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      neutron-network-id:
        type: string
        description: Neutron network id of the interface that address belongs to
      neutron-subnet-id:
        type: string
        description: Neutron id of subnet that address belongs to
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  virtual-data-center:
    description: |
      Virtual organization of cloud infrastructure elements in a data center context
      ###### Related Nodes
      - FROM connector( connector LocatedIn virtual-data-center, MANY2MANY)
      - FROM generic-vnf( generic-vnf LocatedIn virtual-data-center, MANY2MANY)
      - FROM logical-link( logical-link LocatedIn virtual-data-center, MANY2MANY)
    required:
    - vdc-id
    - vdc-name
    properties:
      vdc-id:
        type: string
        description: Unique ID of the vdc
      vdc-name:
        type: string
        description: Name of the virtual data center
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  virtual-data-centers:
    description: |
      Virtual organization of cloud infrastructure elements in a data center context
    properties:
      virtual-data-center:
        type: array
        items:          
          $ref: "#/getDefinitions/virtual-data-center"
  vlan:
    description: |
      Definition of vlan
      ###### Related Nodes
      - TO l-interface (PARENT of vlan, vlan LinksTo l-interface, MANY2ONE)(4)
      - TO logical-link( vlan Uses logical-link, MANY2MANY)(2)
      - TO multicast-configuration( vlan Uses multicast-configuration, MANY2MANY)
      - FROM allotted-resource( allotted-resource PartOf vlan, MANY2MANY)
      - FROM l3-interface-ipv4-address-list (CHILD of vlan, l3-interface-ipv4-address-list BelongsTo vlan, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of vlan, l3-interface-ipv6-address-list BelongsTo vlan, MANY2ONE)(1)
      - FROM service-instance( service-instance ComposedOf vlan, ONE2MANY)

      -(1) IF this VLAN node is deleted, this FROM node is DELETED also
      -(2) IF this VLAN node is deleted, this TO node is DELETED also
      -(4) IF this TO node is deleted, this VLAN is DELETED also
    required:
    - vlan-interface
    - in-maint
    - is-ip-unnumbered
    properties:
      vlan-interface:
        type: string
        description: String that identifies the interface
      vlan-id-inner:
        type: integer
        format: int64
        description: Inner VLAN tag
      vlan-id-outer:
        type: integer
        format: int64
        description: Outer VLAN tag
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      speed-value:
        type: string
        description: Captures the numeric part of the speed
      speed-units:
        type: string
        description: Captures the units corresponding to the speed
      vlan-description:
        type: string
        description: Used to describe (the service associated with) the vlan
      backdoor-connection:
        type: string
        description: Whether customer is going to use this VLAN for backdoor connection to another customer premise device.
      vpn-key:
        type: string
        description: This indicates the customers VPN ID associated with this vlan
      orchestration-status:
        type: string
        description: Status of a vnf's vlan interface, on which the customer circuit resides, mastered by SDN-C.
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      prov-status:
        type: string
        description: Prov Status of the VLAN configuration related to a logical interface. Valid values [PREPROV/NVTPROV/PROV].
      is-ip-unnumbered:
        type: boolean
        description: Flag indicating the interface uses the IP Unnumbered configuration.
      is-private:
        type: boolean
        description: Private VLAN indicator.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
  vlan-mapping:
    description: |
      vlan-mapping object is an optional child object of the forwarder-evc object.  A given forwarder-evc object may have multiple vlan-mapping objects.
      ###### Related Nodes
      - TO forwarder-evc (PARENT of vlan-mapping, vlan-mapping BelongsTo forwarder-evc, MANY2ONE)(4)

      -(4) IF this TO node is deleted, this VLAN-MAPPING is DELETED also
    required:
    - vlan-mapping-id
    properties:
      vlan-mapping-id:
        type: string
        description: Key for vlan-mapping object.
      uni-cvlan:
        type: string
        description: CVLAN value from the UNI/ingress side of the SAREA gateway access device.
      nni-svlan:
        type: string
        description: SVLAN value from the NNI/egress side of the SAREA gateway access device.
      nni-cvlan:
        type: string
        description: CVLAN value from the NNI/egress side of the SAREA gateway access device.
      ivlan:
        type: string
        description: The internal VLAN ('IVLAN') value.  Specific to Arista devices.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      resource-version:
        type: string
  vlan-mappings:
    description: |
      Collection of vlan mappings.
    properties:
      vlan-mapping:
        type: array
        items:          
          $ref: "#/getDefinitions/vlan-mapping"
  vlan-tag:
    description: |
      ###### Related Nodes
      - TO cloud-region( vlan-tag BelongsTo cloud-region, MANY2ONE)
      - TO cp( vlan-tag Uses cp, MANY2MANY)
      - TO l3-network( vlan-tag BelongsTo l3-network, MANY2MANY)
    required:
    - vlan-tag-id
    - vlan-tag-role
    - vlan-id-outer
    - is-private
    properties:
      vlan-tag-id:
        type: string
        description: Unique ID of the vlan-tag
      vlan-tag-role:
        type: string
        description: purpose (l3-network to be connected to)
      vlan-id-inner:
        type: integer
        format: int32
        description: VLAN inner id
      vlan-id-outer:
        type: integer
        format: int32
        description: VLAN outer id
      is-private:
        type: boolean
        description: is VLAN private?
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  vlan-tags:
    properties:
      vlan-tag:
        type: array
        items:          
          $ref: "#/getDefinitions/vlan-tag"
  vlans:
    properties:
      vlan:
        type: array
        items:          
          $ref: "#/getDefinitions/vlan"
  vnf:
    description: |
      Abstract vnf class
    required:
    - vnf-id
    properties:
      vnf-id:
        type: string
        description: Unique id of VNF.  This is unique across the graph.
  vnf-image:
    description: |
      Image object that pertain to a VNF that doesn't have associated vservers.  This is a kludge.
      ###### Related Nodes
      - FROM generic-vnf( generic-vnf Uses vnf-image, MANY2ONE)

      -VNF-IMAGE cannot be deleted if related to GENERIC-VNF
    required:
    - vnf-image-uuid
    - application
    - application-vendor
    properties:
      vnf-image-uuid:
        type: string
        description: Unique ID of this asset
      application:
        type: string
        description: The application that the image instantiates.
      application-vendor:
        type: string
        description: The vendor of the application.
      application-version:
        type: string
        description: The version of the application.
      selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  vnf-images:
    description: |
      Collection of image objects that pertain to a VNF that doesn't have associated vservers.  This is a kludge.
    properties:
      vnf-image:
        type: array
        items:          
          $ref: "#/getDefinitions/vnf-image"
  vnfc:
    description: |
      ###### Related Nodes
      - TO cp (PARENT of vnfc, vnfc BelongsTo cp, ONE2MANY)
      cp is child of vnfc(2)
      - TO generic-vnf( vnfc BelongsTo generic-vnf, MANY2ONE)(4)
      - TO instance-group( vnfc MemberOf instance-group, MANY2MANY)
      - TO vip-ipv4-address-list( vnfc Uses vip-ipv4-address-list, MANY2MANY)
      - TO vip-ipv6-address-list( vnfc Uses vip-ipv6-address-list, MANY2MANY)
      - TO vserver( vnfc HostedOn vserver, ONE2MANY)
      - FROM configuration( configuration Uses vnfc, ONE2ONE)(1)
      - FROM l3-interface-ipv4-address-list (CHILD of vnfc, l3-interface-ipv4-address-list BelongsTo vnfc, MANY2ONE)(1)
      - FROM l3-interface-ipv6-address-list (CHILD of vnfc, l3-interface-ipv6-address-list BelongsTo vnfc, MANY2ONE)(1)
      - FROM vf-module( vf-module Uses vnfc, ONE2MANY)(3)

      -(1) IF this VNFC node is deleted, this FROM node is DELETED also
      -(2) IF this VNFC node is deleted, this TO node is DELETED also
      -(3) IF this FROM node is deleted, this VNFC is DELETED also
      -(4) IF this TO node is deleted, this VNFC is DELETED also
    required:
    - vnfc-name
    - nfc-naming-code
    - nfc-function
    - in-maint
    - is-closed-loop-disabled
    properties:
      vnfc-name:
        type: string
        description: Unique ID of vnfc.
      nfc-naming-code:
        type: string
        description: Short code that is used in naming instances of the item being modeled
      nfc-function:
        type: string
        description: English description of function that the specific resource deployment is providing. Assigned as part of the customization of a resource in a service
      prov-status:
        type: string
        description: prov status of this vnfc
      orchestration-status:
        type: string
        description: Orchestration status of this VNF, mastered by APP-C
      ipaddress-v4-oam-vip:
        type: string
        description: Oam V4 vip address of this vnfc
      in-maint:
        type: boolean
        description: used to indicate whether or not this object is in maintenance mode (maintenance mode = true)
      is-closed-loop-disabled:
        type: boolean
        description: used to indicate whether closed loop function is enabled on this node
      group-notation:
        type: string
        description: Group notation of VNFC
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      cps:
        type: array
        items:
          $ref: "#/getDefinitions/cp"
      l3-interface-ipv4-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv4-address-list"
      l3-interface-ipv6-address-list:
        type: array
        items:          
          $ref: "#/getDefinitions/l3-interface-ipv6-address-list"
  vnfcs:
    description: |
      virtual network components associated with a vserver from application controller.
    properties:
      vnfc:
        type: array
        items:          
          $ref: "#/getDefinitions/vnfc"
  volume:
    description: |
      Ephemeral Block storage volume.
      ###### Related Nodes
      - FROM vserver (PARENT of volume, vserver AttachesTo volume, ONE2MANY)(3)

      -(3) IF this FROM node is deleted, this VOLUME is DELETED also
    required:
    - volume-id
    - volume-selflink
    properties:
      volume-id:
        type: string
        description: Unique ID of block storage volume relative to the vserver.
      volume-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  volume-group:
    description: |
      Persistent block-level storage.
      ###### Related Nodes
      - TO cloud-region (PARENT of volume-group, volume-group BelongsTo cloud-region, MANY2ONE)
      - TO complex( volume-group LocatedIn complex, MANY2ONE)
      - FROM generic-vnf( generic-vnf DependsOn volume-group, ONE2MANY)
      - FROM tenant( tenant DependsOn volume-group, ONE2MANY)
      - FROM vf-module( vf-module Uses volume-group, ONE2ONE)
    required:
    - volume-group-id
    - vnf-type
    properties:
      volume-group-id:
        type: string
        description: Unique ID of volume-group.
      volume-group-name:
        type: string
        description: Name of the volume group.
      heat-stack-id:
        type: string
        description: Heat stack id corresponding to this volume-group
      vnf-type:
        type: string
        description: String capturing type of vnf, that was intended to identify the SDC resource.  This field has been overloaded in service-specific ways and clients should expect changes to occur in the future to this field as ONAP matures.
      orchestration-status:
        type: string
        description: Orchestration status of this volume-group
      model-customization-id:
        type: string
        description: captures the id of all the configuration used to customize the resource for the service.
      vf-module-model-customization-id:
        type: string
        description: helps relate the volume group to the vf-module whose components will require the volume group
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  volume-groups:
    description: |
      Collection of persistent block-level storage.
    properties:
      volume-group:
        type: array
        items:          
          $ref: "#/getDefinitions/volume-group"
  volumes:
    description: |
      Collection of ephemeral Block storage volumes.
    properties:
      volume:
        type: array
        items:          
          $ref: "#/getDefinitions/volume"
  vpls-pe:
    description: |
      VPLS Provider Edge routers.
      ###### Related Nodes
      - TO complex( vpls-pe LocatedIn complex, MANY2ONE)
      - TO ctag-pool( vpls-pe Uses ctag-pool, MANY2MANY)
      - FROM lag-interface (CHILD of vpls-pe, lag-interface BindsTo vpls-pe, MANY2ONE)(1)
      - FROM p-interface (CHILD of vpls-pe, p-interface BindsTo vpls-pe, MANY2ONE)(1)

      -(1) IF this VPLS-PE node is deleted, this FROM node is DELETED also
    required:
    - equipment-name
    properties:
      equipment-name:
        type: string
      prov-status:
        type: string
        description: Trigger for operational monitoring of this VNF by BAU Service Assurance systems.
      ipv4-oam-address:
        type: string
        description: Address tail-f uses to configure generic-vnf, also used for troubleshooting and is IP used for traps generated by GenericVnf (v4-loopback0-ip-address).
      equipment-role:
        type: string
        description: Client should send valid enumerated value, e.g., VPLS-PE.
      vlan-id-outer:
        type: integer
        format: int64
        description: Temporary location for stag to get to VCE
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      p-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/p-interface"
      lag-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/lag-interface"
  vpls-pes:
    description: |
      Collection of VPLS Provider Edge routers
    properties:
      vpls-pe:
        type: array
        items:          
          $ref: "#/getDefinitions/vpls-pe"
  vpn-binding:
    description: |
      VPN binding
      ###### Related Nodes
      - TO customer( vpn-binding Uses customer, MANY2MANY)
      - TO ext-aai-network( vpn-binding BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO p-interface( vpn-binding BindsTo p-interface, ONE2MANY)
      For CCVPN Usecase
      - FROM allotted-resource( allotted-resource BelongsTo vpn-binding, MANY2MANY)
      - FROM configuration( configuration Uses vpn-binding, MANY2ONE)
      - FROM connectivity( connectivity PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM l3-network( l3-network Uses vpn-binding, MANY2MANY)
      - FROM logical-link( logical-link Uses vpn-binding, MANY2MANY)
      - FROM network-resource( network-resource Uses vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM route-target (CHILD of vpn-binding, route-target BelongsTo vpn-binding, MANY2ONE)(1)
      - FROM sdwan-vpn( sdwan-vpn PartOf vpn-binding, ONE2MANY)
      For CCVPN Usecase
      - FROM vrf( vrf AppliesTo vpn-binding, MANY2ONE)
      A vrf uses a vpn-binding.

      -(1) IF this VPN-BINDING node is deleted, this FROM node is DELETED also
      -(2) IF this VPN-BINDING node is deleted, this TO node is DELETED also
      -VPN-BINDING cannot be deleted if related to ALLOTTED-RESOURCE,L3-NETWORK,LOGICAL-LINK
    required:
    - vpn-id
    - vpn-name
    properties:
      vpn-id:
        type: string
        description: VPN ID, globally unique within A&AI
      vpn-name:
        type: string
        description: VPN Name
      vpn-platform:
        type: string
        description: the platform associated with the VPN example AVPN, Mobility
      vpn-type:
        type: string
        description: Type of the vpn, should be taken from enumerated/valid values
      vpn-region:
        type: string
        description: region of customer vpn
      customer-vpn-id:
        type: string
        description: id for this customer vpn
      route-distinguisher:
        type: string
        description: Used to distinguish the distinct VPN routes of separate customers who connect to the provider in an MPLS network.
      access-provider-id:
        type: string
        description: Store the id of the access provider of this vpn.
      access-client-id:
        type: string
        description: Store the id of the access client of this vpn.
      access-topology-id:
        type: string
        description: Store the id of the access topology of this vpn.
      src-access-node-id:
        type: string
        description: Store the id of the src-access-node of this vpn.
      src-access-ltp-id:
        type: string
        description: Store the id of the src-access-ltp of this vpn.
      dst-access-node-id:
        type: string
        description: Store the id of the dst-access-node of this vpn.
      dst-access-ltp-id:
        type: string
        description: Store the id of the dst-access-ltp of this vpn.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      route-targets:
        type: array
        items:
          $ref: "#/getDefinitions/route-target"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
        description: l3-networks relate to vpn-bindings
  vpn-bindings:
    properties:
      vpn-binding:
        type: array
        items:          
          $ref: "#/getDefinitions/vpn-binding"
  vrf:
    description: |
      Definition of vrf
      ###### Related Nodes
      - TO l-interface( vrf Uses l-interface, ONE2MANY)
      - TO l3-network( vrf Uses l3-network, ONE2MANY)
      A vrf uses many l3-networks
      - TO pnf (PARENT of vrf, vrf BelongsTo pnf, MANY2ONE)
      A vrf belongs to a pnf.(4)
      - TO vpn-binding( vrf AppliesTo vpn-binding, MANY2ONE)
      A vrf uses a vpn-binding.
      - FROM configuration( configuration Uses vrf, ONE2MANY)
      A Configuration uses VRFs
      - FROM route-target (CHILD of vrf, route-target BelongsTo vrf, MANY2ONE)(1)

      -(1) IF this VRF node is deleted, this FROM node is DELETED also
      -(4) IF this TO node is deleted, this VRF is DELETED also
    required:
    - vrf-id
    - vrf-name
    properties:
      vrf-id:
        type: string
        description: VRF UUID.
      vrf-name:
        type: string
        description: VRF Name
      vrf-description:
        type: string
        description: VRF Description
      route-distinguisher:
        type: string
        description: Route Distinguisher
      vrf-type:
        type: string
        description: The type of vrf (bridge-domain as an example)
      vrf-address-family:
        type: string
        description: IP address family (v6/v4/both)
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      route-targets:
        type: array
        items:
          $ref: "#/getDefinitions/route-target"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  vrfs:
    properties:
      vrf:
        type: array
        items:          
          $ref: "#/getDefinitions/vrf"
  vserver:
    description: |
      Virtual Servers, aka virtual machine or VM.
      ###### Related Nodes
      - TO flavor( vserver Uses flavor, MANY2ONE)
      - TO image( vserver Uses image, MANY2ONE)
      - TO pserver( vserver HostedOn pserver, MANY2ONE)
      - TO snapshot( vserver Uses snapshot, ONE2ONE)
      - TO tenant (PARENT of vserver, vserver BelongsTo tenant, MANY2ONE)
      - TO volume (PARENT of vserver, vserver AttachesTo volume, ONE2MANY)(2)
      - FROM generic-vnf( generic-vnf HostedOn vserver, ONE2MANY)
      - FROM l-interface (CHILD of vserver, l-interface BindsTo vserver, MANY2ONE)(1)
      - FROM vce( vce HostedOn vserver, ONE2MANY)
      - FROM vf-module( vf-module Uses vserver, ONE2MANY)
      - FROM vnfc( vnfc HostedOn vserver, ONE2MANY)

      -(1) IF this VSERVER node is deleted, this FROM node is DELETED also
      -(2) IF this VSERVER node is deleted, this TO node is DELETED also
    required:
    - vserver-id
    - vserver-name
    - vserver-selflink
    - in-maint
    - is-closed-loop-disabled
    properties:
      vserver-id:
        type: string
        description: Unique identifier for this vserver relative to its tenant
      vserver-name:
        type: string
        description: Name of vserver
      vserver-name2:
        type: string
        description: Alternative name of vserver
      prov-status:
        type: string
        description: Trigger for operational monitoring of this resource by Service Assurance systems.
      vserver-selflink:
        type: string
        description: URL to endpoint where AAI can get more details
      in-maint:
        type: boolean
        description: Used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.
      is-closed-loop-disabled:
        type: boolean
        description: Used to indicate whether closed loop function is enabled on this node
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      volumes:
        type: array
        items:
          $ref: "#/getDefinitions/volume"
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
      l-interfaces:
        type: array
        items:
          $ref: "#/getDefinitions/l-interface"
  vservers:
    description: |
      Collection of virtual Servers, aka virtual machines or VMs.
    properties:
      vserver:
        type: array
        items:          
          $ref: "#/getDefinitions/vserver"
  wan-port-config:
    description: |
      Instance of a wan-port-config
      ###### Related Nodes
      - TO ext-aai-network( wan-port-config BelongsTo ext-aai-network, MANY2MANY)
      For CCVPN Usecase(2)
      - TO service-instance( wan-port-config PartOf service-instance, ONE2MANY)
      For CCVPN Usecase

      -(2) IF this WAN-PORT-CONFIG node is deleted, this TO node is DELETED also
    required:
    - wan-port-config-id
    properties:
      wan-port-config-id:
        type: string
        description: Uniquely identifies this wan-port-config by id
      wan-port-config-name:
        type: string
        description: Store the name of this wan-port-config.
      device-id:
        type: string
        description: Store the id of the device of this wan-port-config.
      vlan-id:
        type: string
        description: Store the id of the vlan of this wan-port-config.
      ip-address:
        type: string
        description: Store the ip-address of this wan-port-config.
      ipv4-address:
        type: string
        description: Store the ipv4-address of this wan-port-config.
      ipv6-address:
        type: string
        description: Store the ipv6-address of this wan-port-config.
      provider-ip-address:
        type: string
        description: Store the provider-ip-address of this wan-port-config.
      provider-ipv4-address:
        type: string
        description: Store the provider-ipv4-address of this wan-port-config.
      provider-ipv6-address:
        type: string
        description: Store the provider-ipv6-address of this wan-port-config.
      input-bandwidth:
        type: string
        description: Store the input-bandwidth of this wan-port-config.
      output-bandwidth:
        type: string
        description: Store the output-bandwidth of this wan-port-config.
      description:
        type: string
        description: Store the description of this wan-port-config.
      port-type:
        type: string
        description: Store the port-type of this wan-port-config.
      port-number:
        type: string
        description: Store the port-number of this wan-port-config.
      transport-network-name:
        type: string
        description: Store the transport-network-name of this wan-port-config.
      device-port-id:
        type: string
        description: Store the device-port-id of this wan-port-config.
      wan-port-id:
        type: string
        description: Store the wan-port-id of this wan-port-config.
      selflink:
        type: string
        description: Store the link to get more information for this object.
      operational-status:
        type: string
        description: Store the operational-status for this object.
      model-customization-id:
        type: string
        description: Store the model-customization-id for this object.
      model-invariant-id:
        type: string
        description: the ASDC model id for this resource or service model.
        also requires: model-version-id
      model-version-id:
        type: string
        description: the ASDC model version for this resource or service model.
        also requires: model-invariant-id
      resource-version:
        type: string
        description: Used for optimistic concurrency.  Must be empty on create, valid on update and delete.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  wan-port-configs:
    description: |
      Collection of wan-port-configs
    properties:
      wan-port-config:
        type: array
        items:          
          $ref: "#/getDefinitions/wan-port-config"
  zone:
    description: |
      A zone is a grouping of assets in a location homing to the same connections into the CBB
      ###### Related Nodes
      - TO complex( zone LocatedIn complex, MANY2ONE)
      - FROM cloud-region( cloud-region LocatedIn zone, MANY2ONE)
      - FROM pnf( pnf LocatedIn zone, MANY2ONE)
      - FROM pserver( pserver LocatedIn zone, MANY2ONE)
      - FROM service-instance( service-instance LocatedIn zone, MANY2ONE)
    required:
    - zone-id
    - zone-name
    - design-type
    - zone-context
    - in-maint
    properties:
      zone-id:
        type: string
        description: Code assigned by AIC to the zone
      zone-name:
        type: string
        description: English name associated with the zone
      design-type:
        type: string
        description: Design of zone [Medium/Large…]
      zone-context:
        type: string
        description: Context of zone [production/test]
      status:
        type: string
        description: Status of a zone.
      resource-version:
        type: string
        description: Concurrency value
      in-maint:
        type: boolean
        description: Used to indicate whether or not zone object is in maintenance mode.
      relationship-list:
        type: array
        items:
          $ref: "#/getDefinitions/relationship"
  zones:
    description: |
      Collection of zones
    properties:
      zone:
        type: array
        items:          
          $ref: "#/getDefinitions/zone"
