blob: 0a032e4be0f441b75a54874b2f883a9ac8d5efcd [file] [log] [blame]
# ============LICENSE_START=======================================================
# Copyright (c) 2021-2022 Bell Canada.
# Modifications Copyright (C) 2021-2022 Nordix Foundation
# Modifications Copyright (C) 2022-2023 TechMahindra Ltd.
# Modifications Copyright (C) 2022 Deutsche Telekom AG
# ================================================================================
# 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=========================================================
listElementByDataspaceAndAnchor:
post:
description: Add list element(s) to a list for a given anchor and dataspace
tags:
- cps-data
summary: Add list element(s)
operationId: addListElements
parameters:
- $ref: 'components.yml#/components/parameters/apiVersionInPath'
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
- $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
type: object
examples:
dataSample:
$ref: 'components.yml#/components/examples/dataSample'
responses:
'201':
$ref: 'components.yml#/components/responses/Created'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
'500':
$ref: 'components.yml#/components/responses/InternalServerError'
put:
description: Replace list content under a given parent, anchor and dataspace
tags:
- cps-data
summary: Replace list content
operationId: replaceListContent
parameters:
- $ref: 'components.yml#/components/parameters/apiVersionInPath'
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
- $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
type: object
examples:
dataSample:
$ref: 'components.yml#/components/examples/dataSample'
responses:
'200':
$ref: 'components.yml#/components/responses/Ok'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
'500':
$ref: 'components.yml#/components/responses/InternalServerError'
nodesByDataspaceAndAnchor:
post:
description: Create a node for a given anchor and dataspace
tags:
- cps-data
summary: Create a node
operationId: createNode
parameters:
- $ref: 'components.yml#/components/parameters/apiVersionInPath'
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
- $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
- $ref: 'components.yml#/components/parameters/contentTypeHeader'
requestBody:
required: true
content:
application/json:
schema:
type: string
examples:
dataSample:
$ref: 'components.yml#/components/examples/dataSample'
application/xml:
schema:
type: object # Workaround to show example
xml:
name: stores
examples:
dataSample:
$ref: 'components.yml#/components/examples/dataSampleXml'
responses:
'201':
$ref: 'components.yml#/components/responses/Created'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
'409':
$ref: 'components.yml#/components/responses/Conflict'
'500':
$ref: 'components.yml#/components/responses/InternalServerError'
patch:
description: Update a data node leaves for a given dataspace and anchor and a parent node xpath. This operation
is currently supported for one top level data node only.
tags:
- cps-data
summary: Update node leaves
operationId: updateNodeLeaves
parameters:
- $ref: 'components.yml#/components/parameters/apiVersionInPath'
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
- $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
type: object
examples:
dataSample:
$ref: 'components.yml#/components/examples/dataSample'
responses:
'200':
$ref: 'components.yml#/components/responses/Ok'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
'500':
$ref: 'components.yml#/components/responses/InternalServerError'
delete:
description: Delete a datanode for a given dataspace and anchor given a node xpath.
tags:
- cps-data
summary: Delete a data node
operationId: deleteDataNode
parameters:
- $ref: 'components.yml#/components/parameters/apiVersionInPath'
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
- $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
responses:
'204':
$ref: 'components.yml#/components/responses/NoContent'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
'500':
$ref: 'components.yml#/components/responses/InternalServerError'
put:
description: Replace a node with descendants for a given dataspace, anchor and a parent node xpath
tags:
- cps-data
summary: Replace a node with descendants
operationId: replaceNode
parameters:
- $ref: 'components.yml#/components/parameters/apiVersionInPath'
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
- $ref: 'components.yml#/components/parameters/observedTimestampInQuery'
requestBody:
required: true
content:
application/json:
schema:
type: object
examples:
dataSample:
$ref: 'components.yml#/components/examples/dataSample'
responses:
'200':
$ref: 'components.yml#/components/responses/Ok'
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
'500':
$ref: 'components.yml#/components/responses/InternalServerError'