RIC:1060: Change in PTL
[ric-plt/xapp-frame.git] / api / xapp_rest_api.yaml
old mode 100755 (executable)
new mode 100644 (file)
index 74db6b9..c2e1be0
@@ -1,7 +1,7 @@
-swagger: "2.0"
+swagger: '2.0'
 info:
   description: This is the initial REST API for RIC subscription
-  version: 0.0.1
+  version: 0.0.4
   title: RIC subscription
   license:
     name: Apache 2.0
@@ -31,7 +31,7 @@ paths:
     get:
       summary: Returns list of subscriptions
       tags:
-        - "common"
+        - common
       operationId: getAllSubscriptions
       produces:
         - application/json
@@ -44,7 +44,7 @@ paths:
           description: Internal error
     post:
       tags:
-        - "common"
+        - common
       operationId: Subscribe
       summary: Subscribe a list of X2AP event triggers to receive messages sent by RAN
       consumes:
@@ -63,13 +63,17 @@ paths:
           schema:
             $ref: '#/definitions/SubscriptionResponse'
         '400':
+          description: Not Found
+        '404':
           description: Invalid input
         '500':
           description: Internal error
+        '503':
+          description: Service Unavailable
   '/subscriptions/{subscriptionId}':
     delete:
       tags:
-        - "common"
+        - common
       summary: Unsubscribe X2AP events from Subscription Manager
       operationId: Unsubscribe
       consumes:
@@ -103,9 +107,9 @@ definitions:
         type: string
         description: The type of the content
         enum:
-        - json
-        - xml
-        - other
+          - json
+          - xml
+          - other
   XAppConfig:
     type: object
     required:
@@ -121,13 +125,11 @@ definitions:
     type: array
     items:
       $ref: '#/definitions/XAppConfig'
-
   ActionDefinition:
-    type: object
-    description: E2SM Octet string. ActionDefinition is an OPTIONAL IE
-    properties:
-      OctetString:
-        type: string
+    type: array
+    description: E2SM byte array. ActionDefinition is an OPTIONAL IE
+    items:
+      type: integer
   SubsequentAction:
     description: SubsequentAction is an OPTIONAL IE
     type: object
@@ -186,63 +188,82 @@ definitions:
     items:
       $ref: '#/definitions/ActionToBeSetup'
   EventTriggerDefinition:
-    type: object
-    description: E2SM Octet string
-    properties:
-      OctetString:
-        type: string
-  SubscriptionDetails:
+    type: array
+    description: E2SM byte array
+    items:
+      type: integer
+  SubscriptionDetail:
     type: object
     required:
-      - EventTriggerList
+      - XappEventInstanceId
+      - EventTriggers
       - ActionToBeSetupList
     properties:
-      EventTriggerList:
+      XappEventInstanceId:
+        type: integer
+        minimum: 0
+        maximum: 65535
+      EventTriggers:
         $ref: '#/definitions/EventTriggerDefinition'
       ActionToBeSetupList:
         $ref: '#/definitions/ActionsToBeSetup'
   SubscriptionDetailsList:
     type: array
     items:
-      $ref: '#/definitions/SubscriptionDetails'
+      $ref: '#/definitions/SubscriptionDetail'
   SubscriptionParams:
     type: object
     required:
       - ClientEndpoint
       - Meid
-      - RequestorId
-      - InstanceId
       - RANFunctionID
       - SubscriptionDetails
     properties:
+      SubscriptionId:
+       type: string
+       description: Optional subscription ID (Submgr allocates if not given)
       ClientEndpoint:
         type: object
         description: xApp service address and port
         properties:
-          ServiceName:
+          Host:
             description: >-
               xApp service address name like
               'service-ricxapp-xappname-http.ricxapp'
             type: string
-          Port:
-            description: xApp service address port
+          HTTPPort:
+            description: xApp HTTP service address port
+            type: integer
+            minimum: 0
+            maximum: 65535
+          RMRPort:
+            description: xApp RMR service address port
             type: integer
             minimum: 0
             maximum: 65535
       Meid:
         type: string
-      RequestorId:
-        type: integer
-        minimum: 0
-        maximum: 65535
-      InstanceId:
-        type: integer
-        minimum: 0
-        maximum: 65535
       RANFunctionID:
         type: integer
         minimum: 0
         maximum: 4095
+      E2SubscriptionDirectives:
+        description: Optional. If not set Submgr uses its default values
+        type: object
+        properties:
+          E2TimeoutTimerValue:
+            description: How long time response is waited from E2 node
+            type: integer
+            minimum: 1
+            maximum: 10
+          E2RetryCount:
+            description: How many times E2 subscription request is retried
+            type: integer
+            minimum: 0
+            maximum: 10
+          RMRRoutingNeeded:
+            description: Subscription needs RMR route from E2Term to xApp 
+            type: boolean
       SubscriptionDetails:
         $ref: '#/definitions/SubscriptionDetailsList'
   SubscriptionResponse:
@@ -260,22 +281,28 @@ definitions:
   SubscriptionInstance:
     type: object
     required:
-      - RequestorId
-      - InstanceId
-      - ErrorCause
+      - XappEventInstanceId
+      - E2EventInstanceId
     properties:
-      RequestorId:
+      XappEventInstanceId:
         type: integer
         minimum: 0
         maximum: 65535
-      InstanceId:
+      E2EventInstanceId:
         type: integer
         minimum: 0
         maximum: 65535
       ErrorCause:
-        description: Empty string when no error.
+        description: Descriptive error cause. Empty string when no error.
+        type: string
+      ErrorSource:
+        description: Source of error cause.
         type: string
-
+        enum: [SUBMGR, RTMGR, DBAAS, ASN1, E2Node]
+      TimeoutType:
+        description: Type timeout. xApp should retry if timeout occurs.
+        type: string
+        enum: [E2-Timeout, RTMGR-Timeout, DBAAS-Timeout]
   SubscriptionData:
     type: object
     properties:
@@ -283,12 +310,16 @@ definitions:
         type: integer
       Meid:
         type: string
-      Endpoint:
+      ClientEndpoint:
         type: array
         items:
           type: string
+      SubscriptionInstances:
+        type: array
+        items:
+          $ref: '#/definitions/SubscriptionInstance'
   SubscriptionList:
     type: array
     description: A list of subscriptions
     items:
-       $ref: '#/definitions/SubscriptionData'
\ No newline at end of file
+      $ref: '#/definitions/SubscriptionData'