blob: b3baa16863826775e2531669f4762111b705edf0 [file] [log] [blame]
openapi: 3.0.3
info:
description: Support datajobs through one or more subjob for each DMI and Data Producer
Identifier combination
title: NCMP Data Subjob API
version: 1.0.0
servers:
- url: /dmi
tags:
- description: DMI plugin rest apis
name: dmi-datajob
paths:
/dmi/v1/readJob/{requestId}:
post:
description: Create a read request
operationId: readDataJob
parameters:
- description: Identifier for the overall Datajob
explode: false
in: path
name: requestId
required: true
schema:
example: some-identifier
type: string
style: simple
requestBody:
content:
application/3gpp-json-patch+json:
schema:
$ref: '#/components/schemas/SubjobReadRequest'
description: Operation body
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/readDataJob_200_response'
description: Response for subjob
tags:
- dmi-datajob
/dmi/v1/writeJob/{requestId}:
post:
description: Create a write request
operationId: writeDataJob
parameters:
- description: Identifier for the overall Datajob
explode: false
in: path
name: requestId
required: true
schema:
example: some-identifier
type: string
style: simple
requestBody:
content:
application/3gpp-json-patch+json:
schema:
$ref: '#/components/schemas/SubjobWriteRequest'
description: Operation body
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/readDataJob_200_response'
description: Response for subjob
tags:
- dmi-datajob
components:
parameters:
requestIdInPath:
description: Identifier for the overall Datajob
explode: false
in: path
name: requestId
required: true
schema:
example: some-identifier
type: string
style: simple
schemas:
SubjobReadRequest:
properties:
dataAcceptType:
description: Defines the data response accept type
example: application/vnd.3gpp.object-tree-hierarchical+json
type: string
dataContentType:
description: Defines the data request content type
example: application/3gpp-json-patch+json
type: string
dataProducerId:
description: ID of the producer registered by DMI for the paths in the operations
in this request
example: my-data-producer-identifier
type: string
data:
example:
op: read
operationId: 1
path: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=2
attributes: userLabel
scope:
scopeTyp: BASE_ONLY
items:
$ref: '#/components/schemas/SubjobReadRequest_data_inner'
type: array
required:
- data
- dataProducerId
type: object
SubjobWriteRequest:
properties:
dataAcceptType:
description: Defines the data response accept type
example: application/vnd.3gpp.object-tree-hierarchical+json
type: string
dataContentType:
description: Defines the data request content type
example: application/3gpp-json-patch+json
type: string
dataProducerId:
description: ID of the producer registered by DMI for the paths in the operations
in this request
example: my-data-producer-identifier
type: string
data:
example:
op: add
path: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003/GNBCUCPFunction=1/EUtraNetwork=1/EUtranFrequency=12
value:
id: 12
attributes:
userLabel: label12
items:
$ref: '#/components/schemas/SubjobWriteRequest_data_inner'
type: array
required:
- data
- dataProducerId
type: object
CmHandleProperties:
description: Private properties of the cm handle for the given path
type: object
Resource:
properties:
id:
description: Identifier of the resource object
example: resource-identifier
type: string
attributes:
additionalProperties:
example: "userLabel: label11"
type: string
description: Key value map representing the objects class attributes and
values
type: object
type: object
ActionParameters:
additionalProperties:
type: string
description: The input of the action in the form of key value pairs
type: object
Object:
type: object
readDataJob_200_response:
example:
dataProducerJobId: dataProducerJobId
properties:
dataProducerJobId:
description: The data job ID.
type: string
type: object
SubjobReadRequest_data_inner:
properties:
path:
description: Defines the resource on which operation is executed
example: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003
type: string
op:
description: Describes the operation to execute
example: read
type: string
operationId:
description: Unique identifier for the operation within the request
example: "1"
type: string
attributes:
description: This parameter specifies the attributes of the scoped resources
that are returned
items:
example: cellId
type: string
type: array
fields:
description: This parameter specifies the attribute fields of the scoped
resources that are returned
items:
type: string
type: array
filter:
description: This parameter is used to filter the scoped Managed Objects.
Only Managed Objects passing the filter criteria will be fetched
example: NRCellDU/attributes/administrativeState==LOCKED
type: string
scopeType:
description: ScopeType selects MOs depending on relationships with Base
Managed Object
example: BASE_ONLY
type: string
scopeLevel:
description: Only used when the scope type is BASE_NTH_LEVEL to specify
amount of levels to search
example: 0
type: integer
moduleSetTag:
description: Module set identifier
example: my-module-set-tag
type: string
cmHandleProperties:
description: Private properties of the cm handle for the given path
type: object
required:
- op
- path
type: object
SubjobWriteRequest_data_inner_value:
description: Value dependent on the op specified. Resource for an add. Object
for a replace. ActionParameters for an action.
oneOf:
- $ref: '#/components/schemas/Resource'
- $ref: '#/components/schemas/ActionParameters'
- $ref: '#/components/schemas/Object'
type: object
SubjobWriteRequest_data_inner:
properties:
path:
description: Defines the resource on which operation is executed
example: SubNetwork=Europe/SubNetwork=Ireland/MeContext=NR03gNodeBRadio00003/ManagedElement=NR03gNodeBRadio00003
type: string
op:
description: Describes the operation to execute
example: add
type: string
operationId:
description: Unique identifier for the operation within the request
example: "1"
type: string
moduleSetTag:
description: Module set identifier
example: my-module-set-tag
type: string
cmHandleProperties:
description: Private properties of the cm handle for the given path
type: object
value:
$ref: '#/components/schemas/SubjobWriteRequest_data_inner_value'
required:
- op
- path
type: object