summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/sections/apis/PMSH.rst91
-rw-r--r--docs/sections/apis/pmsh_swagger.json2046
-rw-r--r--docs/sections/apis/pmsh_swagger.yml1387
3 files changed, 3397 insertions, 127 deletions
diff --git a/docs/sections/apis/PMSH.rst b/docs/sections/apis/PMSH.rst
index a23c438c..504d5945 100644
--- a/docs/sections/apis/PMSH.rst
+++ b/docs/sections/apis/PMSH.rst
@@ -15,94 +15,11 @@ Component description can be found under `PM Subscription Handler`_.
.. _PM Subscription Handler: ../../sections/services/pm-subscription-handler/index.html
+Offered APIs
+============
+
.. csv-table::
:header: "API name", "Swagger JSON", "Swagger YAML"
:widths: 10,5,5
- "PM Subscription Handler Service", ":download:`link <pmsh_swagger.json>`", ":download:`link <pmsh_swagger.yaml>`"
-
-Paths
-=====
-
-GET ``/subscriptions``
-----------------------
-
-Description
-~~~~~~~~~~~
-Retrieves all defined Subscriptions and their related Network Functions from ONAP.
-
-Responses
-~~~~~~~~~
-
-**200**
-^^^^^^^
-
-The Subscription details are returned successfully
-
-**Example:**
-
-.. code-block:: javascript
-
- [
- {
- "subscription_name":"subscriptiona",
- "subscription_status":"UNLOCKED",
- "network_functions":[
- {
- "nf_name":"PNF104",
- "nf_sub_status":"PENDING_CREATE",
- "model_invariant_id":"8a57e2e6-d7ad-445f-b37e-a9837921014f",
- "model_version_id":"d0938fd8-6fe4-42a2-9d26-82b7fa9336ad",
- "sdnc_model_name":"pm_control",
- "sdnc_model_version":"1.2.4"
- },
- {
- "nf_name":"PNF105",
- "nf_sub_status":"CREATED",
- "model_invariant_id":"9a57e2e6-d7ad-445f-b37e-d6754892",
- "model_version_id":"a0938fd8-6fe4-42a2-9d26-82b7fa93378c",
- "sdnc_model_name":"pm_control",
- "sdnc_model_version":"1.2.5"
- }
- ]
- }
- ]
-
-The subscription_status refers to the administrative status of the subscription.
-
-.. csv-table:: Potential Values
- :header: "Status", "Description"
- :widths: 2,4
-
- LOCKED, The Subscription is un-deploying / inactive.
- UNLOCKED, The Subscription is deployed / active.
-
-
-The network_functions.nf_sub_status refers to the status of the subscription (PM Job) on the xNF.
-
-.. csv-table:: Potential Values
- :header: "Status", "Description"
- :widths: 5,16
-
- PENDING_CREATE, Create event published to Policy topic. Awaiting response.
- CREATE_FAILED, Subscription failed to be created on the xNF.
- CREATED, Subscription created successfully on the xNF.
- PENDING_DELETE, Delete event published to Poilcy topic. Awaiting response.
- DELETE_FAILED, Subscription deletion failed to be applied on the xNF.
-
-
-GET ``/healthcheck``
---------------------
-
-Description
-~~~~~~~~~~~
-This is the health check endpoint. If this returns a 200, the server is alive.
-If anything other than a 200, the server is either dead or no connection to PMSH.
-
-Responses
-~~~~~~~~~
-
-**200**
-^^^^^^^
-
-The PMSH instance is running
+ "PM Subscription Handler Service", ":download:`link <pmsh_swagger.json>`", ":download:`link <pmsh_swagger.yaml>`" \ No newline at end of file
diff --git a/docs/sections/apis/pmsh_swagger.json b/docs/sections/apis/pmsh_swagger.json
index ac15ca72..2a6624e6 100644
--- a/docs/sections/apis/pmsh_swagger.json
+++ b/docs/sections/apis/pmsh_swagger.json
@@ -2,24 +2,33 @@
"swagger": "2.0",
"info": {
"title": "PM Subscription Handler Service",
- "version": "1.1.1",
+ "version": "2.0.0",
"description": "PM subscription handler enables control of performance management jobs on network functions in ONAP"
},
"produces": [
"application/json"
],
- "basePath": "/",
+ "basePath": "/pmsh",
+ "tags": [
+ {
+ "name": "Existing API",
+ "description": "Existing API before Public API work"
+ }
+ ],
"schemes": [
"https"
],
"paths": {
- "/subscriptions": {
+ "/v1/subscriptions": {
"get": {
- "description": "Get all defined Subscriptions and their related Network Functions from ONAP.",
+ "tags": [
+ "Existing API"
+ ],
+ "description": "Get all defined subscription and their related Network Functions from ONAP.",
"operationId": "mod.api.controller.get_all_sub_to_nf_relations",
"responses": {
"200": {
- "description": "OK; Array of subscriptions are returned as an object",
+ "description": "OK; Array of subscription are returned as an object",
"schema": {
"type": "array",
"items": {
@@ -46,21 +55,9 @@
"type": "string",
"description": "Status of the Subscription on the Network Function"
},
- "model_invariant_id": {
- "type": "string",
- "description": "The NF model-invariant-id defined in A&AI"
- },
- "model_version_id": {
- "type": "string",
- "description": "The NF model-version-id defined in A&AI"
- },
- "sdnc_model_name": {
+ "orchestration_status": {
"type": "string",
- "description": "The sdnc_model_name (blueprint name) defined in A&AI"
- },
- "sdnc_model_version": {
- "type": "string",
- "description": "The sdnc_model_version (blueprint version) defined in A&AI"
+ "description": "Orchestration status of the Network Function"
}
}
}
@@ -76,7 +73,7 @@
"description": "Forbidden"
},
"404": {
- "description": "there are no subscriptions defined"
+ "description": "there are no subscription defined"
}
}
}
@@ -85,7 +82,7 @@
"get": {
"operationId": "mod.api.controller.status",
"tags": [
- "HealthCheck"
+ "Existing API"
],
"description": "This is the health check endpoint. If this returns a 200, the server is alive.",
"responses": {
@@ -110,6 +107,2013 @@
}
}
}
+ },
+ "/subscription": {
+ "post": {
+ "tags": [
+ "Subscriptions"
+ ],
+ "description": "Create a PM Subscription",
+ "operationId": "mod.api.controller.create_subscription",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Subscription object to be created",
+ "required": true,
+ "schema": {
+ "type": "object",
+ "properties": {
+ "subscription": {
+ "type": "object",
+ "properties": {
+ "subscriptionName": {
+ "type": "string"
+ },
+ "administrativeState": {
+ "allOf": [
+ {
+ "type": "string"
+ },
+ {
+ "enum": [
+ "UNLOCKED",
+ "LOCKED",
+ "FILTERING"
+ ]
+ }
+ ]
+ },
+ "fileBasedGP": {
+ "type": "integer"
+ },
+ "fileLocation": {
+ "type": "string"
+ },
+ "nfFilter": {
+ "type": "object",
+ "properties": {
+ "nfNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelInvariantIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelVersionIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "measurementGroups": {
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "measurementType"
+ ]
+ }
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "DN"
+ ]
+ }
+ }
+ },
+ "required": [
+ "measurementTypes",
+ "managedObjectDNsBasic"
+ ]
+ }
+ },
+ "required": [
+ "measurementGroup"
+ ]
+ }
+ }
+ },
+ "required": [
+ "subscriptionName",
+ "administrativeState",
+ "fileBasedGP",
+ "fileLocation",
+ "nfFilter",
+ "measurementGroups"
+ ]
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "successfully created PM Subscription"
+ },
+ "405": {
+ "description": "Invalid input"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}": {
+ "get": {
+ "tags": [
+ "Subscriptions"
+ ],
+ "description": "Show the subscription",
+ "operationId": "mod.api.controller.get_subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested Subscription returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "subscription": {
+ "type": "object",
+ "properties": {
+ "subscriptionName": {
+ "type": "string"
+ },
+ "administrativeState": {
+ "allOf": [
+ {
+ "type": "string"
+ },
+ {
+ "enum": [
+ "UNLOCKED",
+ "LOCKED",
+ "FILTERING"
+ ]
+ }
+ ]
+ },
+ "fileBasedGP": {
+ "type": "integer"
+ },
+ "fileLocation": {
+ "type": "string"
+ },
+ "nfFilter": {
+ "type": "object",
+ "properties": {
+ "nfNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelInvariantIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelVersionIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "measurementGroups": {
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Subscriptions"
+ ],
+ "description": "This is an update for Subscription object",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "Subscription",
+ "description": "The subscription object to update",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "subscription": {
+ "type": "object",
+ "properties": {
+ "subscriptionName": {
+ "type": "string"
+ },
+ "administrativeState": {
+ "type": "string",
+ "enum": [
+ "UNLOCKED",
+ "LOCKED",
+ "FILTERING"
+ ]
+ },
+ "fileBasedGP": {
+ "type": "integer"
+ },
+ "fileLocation": {
+ "type": "string"
+ },
+ "nfFilter": {
+ "type": "object",
+ "properties": {
+ "nfNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelInvariantIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelVersionIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "measurementGroups": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "subscriptionName"
+ ]
+ }
+ },
+ "required": [
+ "subscription"
+ ]
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Subscription object updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Subscriptions"
+ ],
+ "description": "This is a delete for Subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Subscription object deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/adminState": {
+ "get": {
+ "tags": [
+ "adminState"
+ ],
+ "description": "Show admin state of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested admin state returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "adminState": {
+ "type": "string",
+ "enum": [
+ "UNLOCKED",
+ "LOCKED",
+ "FILTERING"
+ ]
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "adminState"
+ ],
+ "description": "This is an update for a specific subscription's admin state",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "adminState",
+ "description": "The adminState of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "required": [
+ "adminState"
+ ],
+ "properties": {
+ "adminState": {
+ "type": "string",
+ "enum": [
+ "UNLOCKED",
+ "LOCKED",
+ "FILTERING"
+ ]
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "adminState is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/fileBasedGP": {
+ "get": {
+ "tags": [
+ "fileBasedGP"
+ ],
+ "description": "Show the fileBasedGP of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested fileBasedGP returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "fileBasedGP": {
+ "type": "integer"
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "fileBasedGP"
+ ],
+ "description": "This is an update for a specific subscription's fileBasedGP",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "fileBasedGP",
+ "description": "The fileBasedGP field of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "required": [
+ "fileBasedGP"
+ ],
+ "properties": {
+ "fileBasedGP": {
+ "type": "integer"
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "fileBasedGP is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "fileBasedGP"
+ ],
+ "description": "This is a delete for fileBasedGP field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "fileBasedGP field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/fileLocation": {
+ "get": {
+ "tags": [
+ "fileLocation"
+ ],
+ "description": "Show the fileLocation of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested fileLocation returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "fileLocation": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "fileLocation"
+ ],
+ "description": "This is an update for a specific subscription's fileLocation",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "fileLocation",
+ "description": "The fileLocation field of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "required": [
+ "fileLocation"
+ ],
+ "properties": {
+ "fileBasedGP": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "fileLocation is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "fileLocation"
+ ],
+ "description": "This is a delete for fileLocation field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "fileLocation field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/nfFilter": {
+ "get": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "Show the nfFilter of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested nfFilter returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "nfFilter": {
+ "type": "object",
+ "properties": {
+ "nfNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelInvariantIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelVersionIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is an update for a specific subscription's nfFilter",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "nfFilter",
+ "description": "The nfFilter field of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "nfFilter": {
+ "type": "object",
+ "properties": {
+ "nfNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelInvariantIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelVersionIDs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "modelNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "fileLocation is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is a delete for nfFilter field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "nfFilter field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/nfFilter/nfNames": {
+ "get": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "Show the nfNames of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested nfNames returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "nfNames": {
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is an update for a specific subscription's nfNames",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "nfNames",
+ "description": "The nfNames field of nfFilter of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "required": [
+ "nfNames"
+ ],
+ "properties": {
+ "nfNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "nfNames is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is a delete for nfNames field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "nfNames field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/nfFilter/nfinvariantModelIds": {
+ "get": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "Show the nfinvariantModelIds of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested nfinvariantModelIds returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "nfinvariantModelIds": {
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is an update for a specific subscription's nfinvariantModelIds",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "nfinvariantModelIds",
+ "description": "The nfinvariantModelIds field of nfFilter of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "required": [
+ "nfNames"
+ ],
+ "properties": {
+ "nfinvariantModelIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "nfNames is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is a delete for nfinvariantModelIds field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "nfinvariantModelIds field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/nfFilter/modelVersionIds": {
+ "get": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "Show the modelVersionIds of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested modelVersionIds returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "modelVersionIds": {
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is an update for a specific subscription's modelVersionIds",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "modelVersionIds",
+ "description": "The modelVersionIds field of nfFilter of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "required": [
+ "modelVersionIds"
+ ],
+ "properties": {
+ "modelVersionIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "modelVersionIds is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is a delete for modelVersionIds field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "modelVersionIds field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/nfFilter/modelNames": {
+ "get": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "Show the modelNames of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested modelNames returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "modelNames": {
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is an update for a specific subscription's modelNames",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "modelNames",
+ "description": "The modelNames field of nfFilter of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "required": [
+ "modelNames"
+ ],
+ "properties": {
+ "modelNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "modelNames is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "nfFilter"
+ ],
+ "description": "This is a delete for modelNames field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "modelNames field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/measurementGroups": {
+ "get": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "Show the fileBasedGP of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested measurementGroups returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "measurementGroups": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is an update for a specific subscription's measurementGroups",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "measurementGroups",
+ "description": "The measurementGroups field of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "measurementGroups": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "measurementGroups is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is a delete for measurementGroups field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "measurementGroups field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "Subscription object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/measurementGroups/{measurementGroupName}": {
+ "get": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "Show a measurementGroup of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested measurementGroup returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is an update for a specific a measurementGroup",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "measurementGroup",
+ "description": "The measurementGroup field of the subscription object to update",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "measurementGroup": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "measurementType": {
+ "type": "string"
+ },
+ "managedObjectDNsBasic": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "DN": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "measurementGroup is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "measurementGroup object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is a delete for measurementGroup field on a subscription object",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "measurementGroup field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "measurementGroup object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/measurementGroups/{measurementGroupName}/measurementTypes": {
+ "get": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "Show the measurementTypes of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested measurementTypes returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is an update for measurementType field in a specific measurementGroup",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "measurementTypes",
+ "description": "The measurementTypes field of the measurementGroup to update",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "measurementTypes": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "measurementType is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "measurementGroup object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is a delete for measurementType field on a measurementGroup",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "measurementGroup field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "measurementGroup object not found"
+ }
+ }
+ }
+ },
+ "/subscription/{subscriptionName}/measurementGroups/{measurementGroupName}/managedObjectDNsBasic": {
+ "get": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "Show the managedObjectDNsBasic of a subscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Requested managedObjectDNsBasic returned",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "managedObjectDNsBasic": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "there are no subscription defined"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is an update for managedObjectDNsBasic field in a specific measurementGroup",
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "body",
+ "name": "managedObjectDNsBasic",
+ "description": "The managedObjectDNsBasic field of the measurementGroup to update",
+ "schema": {
+ "type": "object",
+ "properties": {
+ "managedObjectDNsBasic": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "managedObjectDNsBasic is updated"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "measurementGroup object not found"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "measurementGroups"
+ ],
+ "description": "This is a delete for managedObjectDNsBasic field on a measurementGroup",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "subscriptionName",
+ "type": "string",
+ "required": true
+ },
+ {
+ "in": "path",
+ "name": "measurementGroupName",
+ "type": "string",
+ "required": true
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "managedObjectDNsBasic field is deleted"
+ },
+ "401": {
+ "description": "Unauthorized"
+ },
+ "403": {
+ "description": "Forbidden"
+ },
+ "404": {
+ "description": "measurementGroup object not found"
+ }
+ }
+ }
}
}
} \ No newline at end of file
diff --git a/docs/sections/apis/pmsh_swagger.yml b/docs/sections/apis/pmsh_swagger.yml
index b9342236..3d7c6c63 100644
--- a/docs/sections/apis/pmsh_swagger.yml
+++ b/docs/sections/apis/pmsh_swagger.yml
@@ -1,5 +1,5 @@
# ============LICENSE_START=======================================================
-# Copyright (C) 2020 Nordix Foundation.
+# Copyright (C) 2020-2021 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -19,23 +19,28 @@
swagger: "2.0"
info:
title: PM Subscription Handler Service
- version: "1.1.1"
+ version: "2.0.0"
description: PM subscription handler enables control of performance management jobs on network functions in ONAP
produces:
- "application/json"
-basePath: "/"
+basePath: "/pmsh"
+tags:
+- name: "Existing API"
+ description: "Existing API before Public API work"
schemes:
- https
# Paths supported by the server application
paths:
- /subscriptions:
+ /v1/subscriptions:
get:
+ tags:
+ - Existing API
description: >-
- Get all defined Subscriptions and their related Network Functions from ONAP.
+ Get all defined subscription and their related Network Functions from ONAP.
operationId: mod.api.controller.get_all_sub_to_nf_relations
responses:
200:
- description: OK; Array of subscriptions are returned as an object
+ description: OK; Array of subscription are returned as an object
schema:
type: array
items:
@@ -58,30 +63,21 @@ paths:
nf_sub_status:
type: string
description: Status of the Subscription on the Network Function
- model_invariant_id:
- type: string
- description: The NF model-invariant-id defined in A&AI
- model_version_id:
- type: string
- description: The NF model-version-id defined in A&AI
- sdnc_model_name:
- type: string
- description: The sdnc_model_name (blueprint name) defined in A&AI
- sdnc_model_version:
+ orchestration_status:
type: string
- description: The sdnc_model_version (blueprint version) defined in A&AI
+ description: Orchestration status of the Network Function
401:
description: Unauthorized
403:
description: Forbidden
404:
- description: there are no subscriptions defined
+ description: there are no subscription defined
/healthcheck:
get:
operationId: mod.api.controller.status
tags:
- - "HealthCheck"
+ - "Existing API"
description: >-
This is the health check endpoint. If this returns a 200, the server is alive.
responses:
@@ -96,3 +92,1356 @@ paths:
enum: [healthy, unhealthy]
503:
description: the pmsh service is unavailable
+
+ /subscription:
+ post:
+ tags:
+ - "Subscriptions"
+ description: >-
+ Create a PM Subscription
+ operationId: mod.api.controller.create_subscription
+ consumes:
+ - "application/json"
+ produces:
+ - "application/json"
+ parameters:
+ - in: "body"
+ name: "body"
+ description: "Subscription object to be created"
+ required: true
+ schema:
+ type: object
+ properties:
+ subscription:
+ type: object
+ properties:
+ subscriptionName:
+ type: string
+ administrativeState:
+ allOf:
+ - type: string
+ - enum:
+ - UNLOCKED
+ - LOCKED
+ - FILTERING
+ fileBasedGP:
+ type: integer
+ fileLocation:
+ type: string
+ nfFilter:
+ type: object
+ properties:
+ nfNames:
+ type: array
+ items:
+ type: string
+ modelInvariantIDs:
+ type: array
+ items:
+ type: string
+ modelVersionIDs:
+ type: array
+ items:
+ type: string
+ modelNames:
+ type: array
+ items:
+ type: string
+ additionalProperties: false
+ measurementGroups:
+ type: array
+ minItems: 1
+ items:
+ type: object
+ properties:
+ measurementGroup:
+ type: object
+ properties:
+ measurementTypes:
+ type: array
+ minItems: 1
+ items:
+ type: object
+ properties:
+ measurementType:
+ type: string
+ required:
+ - measurementType
+ managedObjectDNsBasic:
+ type: array
+ minItems: 1
+ items:
+ type: object
+ properties:
+ DN:
+ type: string
+ required:
+ - DN
+ required:
+ - measurementTypes
+ - managedObjectDNsBasic
+ required:
+ - measurementGroup
+ required:
+ - subscriptionName
+ - administrativeState
+ - fileBasedGP
+ - fileLocation
+ - nfFilter
+ - measurementGroups
+ responses:
+ 201:
+ description: successfully created PM Subscription
+ 405:
+ description: Invalid input
+
+
+ #subcriptions
+ /subscription/{subscriptionName}:
+ get:
+ tags:
+ - "Subscriptions"
+ description: >-
+ Show the subscription
+ operationId: mod.api.controller.get_subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested Subscription returned
+ schema:
+ type: object
+ properties:
+ subscription:
+ type: object
+ properties:
+ subscriptionName:
+ type: string
+ administrativeState:
+ allOf:
+ - type: string
+ - enum:
+ - UNLOCKED
+ - LOCKED
+ - FILTERING
+ fileBasedGP:
+ type: integer
+ fileLocation:
+ type: string
+ nfFilter:
+ type: object
+ properties:
+ nfNames:
+ type: array
+ items:
+ type: string
+ modelInvariantIDs:
+ type: array
+ items:
+ type: string
+ modelVersionIDs:
+ type: array
+ items:
+ type: string
+ modelNames:
+ type: array
+ items:
+ type: string
+ additionalProperties: false
+ measurementGroups:
+ type: array
+ minItems: 1
+ items:
+ type: object
+ properties:
+ measurementGroup:
+ type: object
+ properties:
+ measurementTypes:
+ type: array
+ minItems: 1
+ items:
+ type: object
+ properties:
+ measurementType:
+ type: string
+ managedObjectDNsBasic:
+ type: array
+ minItems: 1
+ items:
+ type: object
+ properties:
+ DN:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put: #full modify sub object
+ tags:
+ - "Subscriptions"
+ description: >-
+ This is an update for Subscription object
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: Subscription
+ description: The subscription object to update
+ schema:
+ type: object
+ properties:
+ subscription:
+ type: object
+ properties:
+ subscriptionName:
+ type: string
+ administrativeState:
+ type: string
+ enum:
+ - UNLOCKED
+ - LOCKED
+ - FILTERING
+ fileBasedGP:
+ type: integer
+ fileLocation:
+ type: string
+ nfFilter:
+ type: object
+ properties:
+ nfNames:
+ type: array
+ items:
+ type: string
+ modelInvariantIDs:
+ type: array
+ items:
+ type: string
+ modelVersionIDs:
+ type: array
+ items:
+ type: string
+ modelNames:
+ type: array
+ items:
+ type: string
+ measurementGroups:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementGroup:
+ type: object
+ properties:
+ measurementTypes:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementType:
+ type: string
+ managedObjectDNsBasic:
+ type: array
+ items:
+ type: object
+ properties:
+ DN:
+ type: string
+ required:
+ - subscriptionName
+ required:
+ - subscription
+ #add subscription schema here
+ responses:
+ 201:
+ description: Subscription object updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "Subscriptions"
+ description: >-
+ This is a delete for Subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: Subscription object deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+#quick way to update a field here
+ #adminState
+ /subscription/{subscriptionName}/adminState:
+ get:
+ tags:
+ - "adminState"
+ description: >-
+ Show admin state of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested admin state returned
+ schema:
+ type: object
+ properties:
+ adminState:
+ type: string
+ enum:
+ - UNLOCKED
+ - LOCKED
+ - FILTERING
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "adminState"
+ description: >-
+ This is an update for a specific subscription's admin state
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: adminState
+ description: The adminState of the subscription object to update
+ schema:
+ type: object
+ required:
+ - adminState
+ properties:
+ adminState:
+ type: string
+ enum:
+ - UNLOCKED
+ - LOCKED
+ - FILTERING
+ responses:
+ 201:
+ description: adminState is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #fileBasedGP
+ /subscription/{subscriptionName}/fileBasedGP:
+ get:
+ tags:
+ - "fileBasedGP"
+ description: >-
+ Show the fileBasedGP of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested fileBasedGP returned
+ schema:
+ type: object
+ properties:
+ fileBasedGP:
+ type: integer
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "fileBasedGP"
+ description: >-
+ This is an update for a specific subscription's fileBasedGP
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: fileBasedGP
+ description: The fileBasedGP field of the subscription object to update
+ schema:
+ type: object
+ required:
+ - fileBasedGP
+ properties:
+ fileBasedGP:
+ type: integer
+ responses:
+ 201:
+ description: fileBasedGP is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "fileBasedGP"
+ description: >-
+ This is a delete for fileBasedGP field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: fileBasedGP field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #fileLocation
+ /subscription/{subscriptionName}/fileLocation:
+ get:
+ tags:
+ - "fileLocation"
+ description: >-
+ Show the fileLocation of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested fileLocation returned
+ schema:
+ type: object
+ properties:
+ fileLocation:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "fileLocation"
+ description: >-
+ This is an update for a specific subscription's fileLocation
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: fileLocation
+ description: The fileLocation field of the subscription object to update
+ schema:
+ type: object
+ required:
+ - fileLocation
+ properties:
+ fileBasedGP:
+ type: string
+ responses:
+ 201:
+ description: fileLocation is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "fileLocation"
+ description: >-
+ This is a delete for fileLocation field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: fileLocation field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #nfFilter
+ /subscription/{subscriptionName}/nfFilter:
+ get:
+ tags:
+ - "nfFilter"
+ description: >-
+ Show the nfFilter of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested nfFilter returned
+ schema:
+ type: object
+ properties:
+ nfFilter:
+ type: object
+ properties:
+ nfNames:
+ type: array
+ items:
+ type: string
+ modelInvariantIDs:
+ type: array
+ items:
+ type: string
+ modelVersionIDs:
+ type: array
+ items:
+ type: string
+ modelNames:
+ type: array
+ items:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is an update for a specific subscription's nfFilter
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: nfFilter
+ description: The nfFilter field of the subscription object to update
+ schema:
+ type: object
+ properties:
+ nfFilter:
+ type: object
+ properties:
+ nfNames:
+ type: array
+ items:
+ type: string
+ modelInvariantIDs:
+ type: array
+ items:
+ type: string
+ modelVersionIDs:
+ type: array
+ items:
+ type: string
+ modelNames:
+ type: array
+ items:
+ type: string
+ responses:
+ 201:
+ description: fileLocation is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is a delete for nfFilter field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: nfFilter field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #nfNames
+ /subscription/{subscriptionName}/nfFilter/nfNames:
+ get:
+ tags:
+ - "nfFilter"
+ description: >-
+ Show the nfNames of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested nfNames returned
+ schema:
+ type: object
+ properties:
+ nfNames:
+ items:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is an update for a specific subscription's nfNames
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: nfNames
+ description: The nfNames field of nfFilter of the subscription object to update
+ schema:
+ type: object
+ required:
+ - nfNames
+ properties:
+ nfNames:
+ type: array
+ items:
+ type: string
+ responses:
+ 201:
+ description: nfNames is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is a delete for nfNames field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: nfNames field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #nfinvariantModelIds
+ /subscription/{subscriptionName}/nfFilter/nfinvariantModelIds:
+ get:
+ tags:
+ - "nfFilter"
+ description: >-
+ Show the nfinvariantModelIds of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested nfinvariantModelIds returned
+ schema:
+ type: object
+ properties:
+ nfinvariantModelIds:
+ items:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is an update for a specific subscription's nfinvariantModelIds
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: nfinvariantModelIds
+ description: The nfinvariantModelIds field of nfFilter of the subscription object to update
+ schema:
+ type: object
+ required:
+ - nfNames
+ properties:
+ nfinvariantModelIds:
+ type: array
+ items:
+ type: string
+ responses:
+ 201:
+ description: nfNames is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is a delete for nfinvariantModelIds field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: nfinvariantModelIds field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #modelVersionIds
+ /subscription/{subscriptionName}/nfFilter/modelVersionIds:
+ get:
+ tags:
+ - "nfFilter"
+ description: >-
+ Show the modelVersionIds of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested modelVersionIds returned
+ schema:
+ type: object
+ properties:
+ modelVersionIds:
+ items:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is an update for a specific subscription's modelVersionIds
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: modelVersionIds
+ description: The modelVersionIds field of nfFilter of the subscription object to update
+ schema:
+ type: object
+ required:
+ - modelVersionIds
+ properties:
+ modelVersionIds:
+ type: array
+ items:
+ type: string
+ responses:
+ 201:
+ description: modelVersionIds is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is a delete for modelVersionIds field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: modelVersionIds field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #modelNames
+ /subscription/{subscriptionName}/nfFilter/modelNames:
+ get:
+ tags:
+ - "nfFilter"
+ description: >-
+ Show the modelNames of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested modelNames returned
+ schema:
+ type: object
+ properties:
+ modelNames:
+ items:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is an update for a specific subscription's modelNames
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: modelNames
+ description: The modelNames field of nfFilter of the subscription object to update
+ schema:
+ type: object
+ required:
+ - modelNames
+ properties:
+ modelNames:
+ type: array
+ items:
+ type: string
+ responses:
+ 201:
+ description: modelNames is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "nfFilter"
+ description: >-
+ This is a delete for modelNames field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: modelNames field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #measurementGroups
+ /subscription/{subscriptionName}/measurementGroups:
+ get:
+ tags:
+ - "measurementGroups"
+ description: >-
+ Show the fileBasedGP of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested measurementGroups returned
+ schema:
+ type: object
+ properties:
+ measurementGroups:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementGroup:
+ type: object
+ properties:
+ measurementTypes:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementType:
+ type: string
+ managedObjectDNsBasic:
+ type: array
+ items:
+ type: object
+ properties:
+ DN:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is an update for a specific subscription's measurementGroups
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: body
+ name: measurementGroups
+ description: The measurementGroups field of the subscription object to update
+ schema:
+ type: object
+ properties:
+ measurementGroups:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementGroup:
+ type: object
+ properties:
+ measurementTypes:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementType:
+ type: string
+ managedObjectDNsBasic:
+ type: array
+ items:
+ type: object
+ properties:
+ DN:
+ type: string
+ responses:
+ 201:
+ description: measurementGroups is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+ delete:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is a delete for measurementGroups field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: measurementGroups field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: Subscription object not found
+
+ #measurementGroupName
+ /subscription/{subscriptionName}/measurementGroups/{measurementGroupName}:
+ get:
+ tags:
+ - "measurementGroups"
+ description: >-
+ Show a measurementGroup of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested measurementGroup returned
+ schema:
+ type: object
+ properties:
+ measurementGroup:
+ type: object
+ properties:
+ measurementTypes:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementType:
+ type: string
+ managedObjectDNsBasic:
+ type: array
+ items:
+ type: object
+ properties:
+ DN:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is an update for a specific a measurementGroup
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ - in: body
+ name: measurementGroup
+ description: The measurementGroup field of the subscription object to update
+ schema:
+ type: object
+ properties:
+ measurementGroup:
+ type: object
+ properties:
+ measurementTypes:
+ type: array
+ items:
+ type: object
+ properties:
+ measurementType:
+ type: string
+ managedObjectDNsBasic:
+ type: array
+ items:
+ type: object
+ properties:
+ DN:
+ type: string
+ responses:
+ 201:
+ description: measurementGroup is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: measurementGroup object not found
+ delete:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is a delete for measurementGroup field on a subscription object
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: measurementGroup field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: measurementGroup object not found
+
+ #measurementType
+ /subscription/{subscriptionName}/measurementGroups/{measurementGroupName}/measurementTypes:
+ get:
+ tags:
+ - "measurementGroups"
+ description: >-
+ Show the measurementTypes of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested measurementTypes returned
+ schema:
+ type: object
+ properties:
+ measurementTypes:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is an update for measurementType field in a specific measurementGroup
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ - in: body
+ name: measurementTypes
+ description: The measurementTypes field of the measurementGroup to update
+ schema:
+ type: object
+ properties:
+ measurementTypes:
+ type: string
+ responses:
+ 201:
+ description: measurementType is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: measurementGroup object not found
+ delete:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is a delete for measurementType field on a measurementGroup
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: measurementGroup field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: measurementGroup object not found
+
+ #managedObjectDNsBasic
+ /subscription/{subscriptionName}/measurementGroups/{measurementGroupName}/managedObjectDNsBasic:
+ get:
+ tags:
+ - "measurementGroups"
+ description: >-
+ Show the managedObjectDNsBasic of a subscription
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ responses:
+ 200:
+ description: Requested managedObjectDNsBasic returned
+ schema:
+ type: object
+ properties:
+ managedObjectDNsBasic:
+ type: string
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: there are no subscription defined
+ put:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is an update for managedObjectDNsBasic field in a specific measurementGroup
+ consumes:
+ - application/json
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ - in: body
+ name: managedObjectDNsBasic
+ description: The managedObjectDNsBasic field of the measurementGroup to update
+ schema:
+ type: object
+ properties:
+ managedObjectDNsBasic:
+ type: string
+ responses:
+ 201:
+ description: managedObjectDNsBasic is updated
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: measurementGroup object not found
+ delete:
+ tags:
+ - "measurementGroups"
+ description: >-
+ This is a delete for managedObjectDNsBasic field on a measurementGroup
+ parameters:
+ - in: path
+ name: subscriptionName
+ type: string
+ required: true
+ - in: path
+ name: measurementGroupName
+ type: string
+ required: true
+ responses:
+ 204:
+ description: managedObjectDNsBasic field is deleted
+ 401:
+ description: Unauthorized
+ 403:
+ description: Forbidden
+ 404:
+ description: measurementGroup object not found \ No newline at end of file