summaryrefslogtreecommitdiffstats
path: root/docs/api/swagger
diff options
context:
space:
mode:
authoregernug <gerard.nugent@est.tech>2024-04-17 10:08:38 +0100
committeregernug <gerard.nugent@est.tech>2024-04-25 12:35:33 +0100
commitb0ee038f860283d877b1590111b07016098e1777 (patch)
tree7f537d3abd9937da63b44043c56e690c57aabd35 /docs/api/swagger
parent676227bc67596dfc01cdc82beec3022bc830fec4 (diff)
Define DMI REST interface for Datajobs
Define new REST interface : Method: POST Path: /dmi/v1/dataJob/{requestId} New Interface DMI-I-02 Issue-ID: CPS-2141 Change-Id: I46ddbc4b179fcdfc3396d4044aa201dc7f503918 Signed-off-by: egernug <gerard.nugent@est.tech>
Diffstat (limited to 'docs/api/swagger')
-rw-r--r--docs/api/swagger/openapi-datajob.yaml214
1 files changed, 214 insertions, 0 deletions
diff --git a/docs/api/swagger/openapi-datajob.yaml b/docs/api/swagger/openapi-datajob.yaml
new file mode 100644
index 00000000..04a5bf1d
--- /dev/null
+++ b/docs/api/swagger/openapi-datajob.yaml
@@ -0,0 +1,214 @@
+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:
+ /v1/dataJob/{requestId}:
+ post:
+ description: Create a read request
+ operationId: createReadRequest
+ 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/SubjobRequest'
+ description: Operation body
+ responses:
+ "200":
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/createReadRequest_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:
+ SubjobRequest:
+ 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:
+ $ref: '#/components/schemas/SubjobRequest_data'
+ required:
+ - data
+ - dataProducerId
+ type: object
+ ReadOperation:
+ 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/ReadOperation_inner'
+ type: array
+ WriteOperation:
+ 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/WriteOperation_inner'
+ type: array
+ 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
+ createReadRequest_200_response:
+ example:
+ dataProducerJobId: dataProducerJobId
+ properties:
+ dataProducerJobId:
+ description: The data job ID.
+ type: string
+ type: object
+ SubjobRequest_data:
+ oneOf:
+ - $ref: '#/components/schemas/ReadOperation'
+ - $ref: '#/components/schemas/WriteOperation'
+ ReadOperation_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
+ WriteOperation_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
+ WriteOperation_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
+ value:
+ $ref: '#/components/schemas/WriteOperation_inner_value'
+ required:
+ - op
+ - path
+ type: object