#  ============LICENSE_START=======================================================
#  Copyright (C) 2021-2024 Nordix Foundation
#  Modifications Copyright (C) 2021 Pantheon.tech
#  Modifications Copyright (C) 2021 Bell Canada
#  ================================================================================
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#        http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" 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.
#
#  SPDX-License-Identifier: Apache-2.0
#  ============LICENSE_END=========================================================

openapi: 3.0.3
info:
  title: NCMP to CPS Proxy API
  description: NCMP to CPS Proxy API
  version: "3.5.2"
servers:
  - url: /ncmp
components:
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
paths:
  /v1/ch/{cm-handle}/data/ds/{datastore-name}:
    $ref: 'ncmp.yml#/resourceDataForCmHandle'

  /v1/data:
    $ref: 'ncmp.yml#/dataOperationForCmHandle'

  /v1/ch/{cm-handle}/data/ds/{datastore-name}/query:
    $ref: 'ncmp.yml#/queryResourceDataForCmHandle'

  /v1/ch/{cm-handle}/modules:
    $ref: 'ncmp.yml#/fetchModuleReferencesByCmHandle'

  /v1/ch/{cm-handle}/modules/definitions:
    $ref: 'ncmp.yml#/getModuleDefinitions'

  /v1/ch/searches:
    $ref: 'ncmp.yml#/searchCmHandles'

  /v1/ch/{cm-handle}:
    $ref: 'ncmp.yml#/retrieveCmHandleDetailsById'

  /v1/ch/{cm-handle}/properties:
    $ref: 'ncmp.yml#/getCmHandlePropertiesById'

  /v1/ch/id-searches:
    $ref: 'ncmp.yml#/searchCmHandleIds'

  /v1/ch/{cm-handle}/state:
    $ref: 'ncmp.yml#/getCmHandleStateById'

  /v1/ch/{cm-handle}/data-sync:
    $ref: 'ncmp.yml#/setDataSyncEnabledFlag'
security:
  - basicAuth: []
