blob: d456f44e6c3210e628cf927a929d4aad739d1e1d [file] [log] [blame]
# ============LICENSE_START=======================================================
# 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=========================================================
nodeByDataspaceAndAnchor:
get:
description: Get a node with an option to retrieve all the children for a given anchor and dataspace
tags:
- cps-data
summary: Get a node
operationId: getNodeByDataspaceAndAnchor
parameters:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/xpathInQuery'
- $ref: 'components.yml#/components/parameters/includeDescendantsOptionInQuery'
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
example: { "child": my_child,"leafList": "leafListElement1, leafListElement2", "leaf": my_leaf }
'400':
$ref: 'components.yml#/components/responses/BadRequest'
'401':
$ref: 'components.yml#/components/responses/Unauthorized'
'403':
$ref: 'components.yml#/components/responses/Forbidden'
'404':
$ref: 'components.yml#/components/responses/NotFound'
x-codegen-request-body-name: xpath
listNodeByDataspaceAndAnchor:
post:
description: Add list-node child elements to existing node for a given anchor and dataspace
tags:
- cps-data
summary: Add list-node child element(s) under existing parent node
operationId: addListNodeElements
parameters:
- $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: string
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'
put:
description: Replace list-node child elements under existing node for a given anchor and dataspace
tags:
- cps-data
summary: Replace list-node child element(s) under existing parent node
operationId: replaceListNodeElements
parameters:
- $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: string
responses:
'200':
$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'
delete:
description: Delete list-node child elements under existing node for a given anchor and dataspace
tags:
- cps-data
summary: Delete list-node child element(s) under existing parent node
operationId: deleteListNodeElements
parameters:
- $ref: 'components.yml#/components/parameters/dataspaceNameInPath'
- $ref: 'components.yml#/components/parameters/anchorNameInPath'
- $ref: 'components.yml#/components/parameters/requiredXpathInQuery'
- $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'
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/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: string
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'
patch:
description: Update a data node leaves for a given dataspace and anchor and a parent node xpath
tags:
- cps-data
summary: Update node leaves
operationId: updateNodeLeaves
parameters:
- $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: string
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'
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/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: string
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'