5ab446cbbec0c7a6a04b929c4f0c6ceaef1dee7d
[cps.git] / cps-ncmp-events / src / main / resources / schemas / avc-subscription-event-v1.json
1 {
2   "$schema": "https://json-schema.org/draft/2019-09/schema",
3   "$id": "urn:cps:org.onap.cps.ncmp.events:avc-subscription-event:v1",
4   "$ref": "#/definitions/SubscriptionEvent",
5   "definitions": {
6     "SubscriptionEvent": {
7       "description": "The payload for avc subscription event.",
8       "type": "object",
9       "properties": {
10         "version": {
11           "description": "The event type version",
12           "type": "string"
13         },
14         "eventType": {
15           "description": "The event type",
16           "type": "string",
17           "enum": ["CREATE"]
18         },
19         "event": {
20           "$ref": "#/definitions/event"
21         }
22       },
23       "required": [
24         "version",
25         "eventContent"
26       ],
27       "additionalProperties": false
28     },
29     "event": {
30       "description": "The event content.",
31       "type": "object",
32       "properties": {
33         "subscription": {
34           "description": "The subscription details.",
35           "type": "object",
36           "properties": {
37             "clientID": {
38               "description": "The clientID",
39               "type": "string"
40             },
41             "name": {
42               "description": "The name of the subscription",
43               "type": "string"
44             },
45             "isTagged": {
46               "description": "optional parameter, default is no",
47               "type": "boolean",
48               "default": false
49             }
50           },
51           "required": [
52             "clientID",
53             "name"
54           ]
55         },
56         "dataType": {
57           "description": "The datatype content.",
58           "type": "object",
59           "properties": {
60             "dataspace": {
61               "description": "The dataspace name",
62               "type": "string"
63             },
64             "dataCategory": {
65               "description": "The category type of the data",
66               "type": "string"
67             },
68             "dataProvider": {
69               "description": "The provider name of the data",
70               "type": "string"
71             },
72             "schemaName": {
73               "description": "The name of the schema",
74               "type": "string"
75             },
76             "schemaVersion": {
77               "description": "The version of the schema",
78               "type": "string"
79             }
80           }
81         },
82         "required": [
83           "dataspace",
84           "dataCategory",
85           "dataProvider",
86           "schemaName",
87           "schemaVersion"
88         ],
89         "predicates": {
90           "description": "Additional values to be added into the subscription",
91           "existingJavaType" : "java.util.Map<String,Object>",
92           "type" : "object"
93           }
94         }
95       },
96       "required": [
97         "subscription",
98         "dataType"
99       ]
100     }
101 }