blob: 2d02e99816cc20d41775b0caac2c3fb16701e23b [file] [log] [blame]
Jim Hahnd5cc9482019-05-29 15:41:48 -04001{
2 "swagger" : "2.0",
3 "basePath" : "/",
4 "tags" : [ {
Ram Krishna Verma2145c752020-04-30 14:11:54 -04005 "name" : "PdpGroup Create/Update"
Jim Hahnd5cc9482019-05-29 15:41:48 -04006 } ],
7 "schemes" : [ "http", "https" ],
Jim Hahn5eeeedd2019-12-11 16:25:56 -05008 "consumes" : [ "application/json", "application/yaml" ],
9 "produces" : [ "application/json", "application/yaml" ],
Jim Hahnd5cc9482019-05-29 15:41:48 -040010 "paths" : {
Jim Hahn5eeeedd2019-12-11 16:25:56 -050011 "/policy/pap/v1/pdps/groups/batch" : {
Jim Hahnd5cc9482019-05-29 15:41:48 -040012 "post" : {
Ram Krishna Verma2145c752020-04-30 14:11:54 -040013 "tags" : [ "PdpGroup Create/Update" ],
Jim Hahn5eeeedd2019-12-11 16:25:56 -050014 "summary" : "Create or update PDP Groups",
15 "description" : "Create or update one or more PDP Groups, returning optional error details",
16 "operationId" : "createOrUpdateGroups",
17 "produces" : [ "application/json", "application/yaml" ],
Jim Hahnd5cc9482019-05-29 15:41:48 -040018 "parameters" : [ {
19 "name" : "X-ONAP-RequestID",
20 "in" : "header",
21 "description" : "RequestID for http transaction",
22 "required" : false,
23 "type" : "string",
24 "format" : "uuid"
25 }, {
26 "in" : "body",
27 "name" : "body",
28 "description" : "List of PDP Group Configuration",
29 "required" : true,
30 "schema" : {
31 "$ref" : "#/definitions/PdpGroups"
32 }
33 } ],
34 "responses" : {
35 "200" : {
36 "description" : "successful operation",
37 "headers" : {
38 "X-MinorVersion" : {
39 "type" : "string",
40 "description" : "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client"
41 },
42 "X-PatchVersion" : {
43 "type" : "string",
44 "description" : "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request"
45 },
46 "X-LatestVersion" : {
47 "type" : "string",
48 "description" : "Used only to communicate an API's latest version"
49 },
50 "X-ONAP-RequestID" : {
51 "type" : "string",
52 "format" : "uuid",
53 "description" : "Used to track REST transactions for logging purpose"
54 }
55 },
56 "schema" : {
Jim Hahn5eeeedd2019-12-11 16:25:56 -050057 "$ref" : "#/definitions/PdpGroupUpdateResponse"
Jim Hahnd5cc9482019-05-29 15:41:48 -040058 }
59 },
60 "401" : {
61 "description" : "Authentication Error"
62 },
63 "403" : {
64 "description" : "Authorization Error"
65 },
66 "500" : {
67 "description" : "Internal Server Error"
68 }
69 },
70 "security" : [ {
71 "basicAuth" : [ ]
72 } ],
73 "x-interface info" : {
74 "api-version" : "1.0.0",
75 "last-mod-release" : "Dublin"
76 }
77 }
78 }
79 },
80 "securityDefinitions" : {
81 "basicAuth" : {
82 "description" : "",
83 "type" : "basic"
84 }
85 },
86 "definitions" : {
Jim Hahn5eeeedd2019-12-11 16:25:56 -050087 "PdpGroupUpdateResponse" : {
88 "type" : "object",
89 "properties" : {
90 "errorDetails" : {
91 "type" : "string"
92 }
93 }
94 },
Jim Hahnd5cc9482019-05-29 15:41:48 -040095 "Pdp" : {
96 "type" : "object",
97 "properties" : {
98 "instanceId" : {
99 "type" : "string"
100 },
101 "pdpState" : {
102 "type" : "string",
103 "enum" : [ "PASSIVE", "SAFE", "TEST", "ACTIVE", "TERMINATED" ]
104 },
105 "healthy" : {
106 "type" : "string",
107 "enum" : [ "HEALTHY", "NOT_HEALTHY", "TEST_IN_PROGRESS", "UNKNOWN" ]
108 },
109 "message" : {
110 "type" : "string"
111 }
112 }
113 },
114 "PdpGroup" : {
115 "type" : "object",
116 "properties" : {
117 "name" : {
118 "type" : "string"
119 },
120 "description" : {
121 "type" : "string"
122 },
123 "pdpGroupState" : {
124 "type" : "string",
125 "enum" : [ "PASSIVE", "SAFE", "TEST", "ACTIVE", "TERMINATED" ]
126 },
127 "properties" : {
128 "type" : "object",
129 "additionalProperties" : {
130 "type" : "string"
131 }
132 },
133 "pdpSubgroups" : {
134 "type" : "array",
135 "items" : {
136 "$ref" : "#/definitions/PdpSubGroup"
137 }
138 }
139 }
140 },
141 "PdpGroups" : {
142 "type" : "object",
143 "properties" : {
144 "groups" : {
145 "type" : "array",
146 "items" : {
147 "$ref" : "#/definitions/PdpGroup"
148 }
149 }
150 }
151 },
152 "PdpSubGroup" : {
153 "type" : "object",
154 "properties" : {
155 "pdpType" : {
156 "type" : "string"
157 },
158 "supportedPolicyTypes" : {
159 "type" : "array",
160 "items" : {
161 "$ref" : "#/definitions/ToscaPolicyTypeIdentifier"
162 }
163 },
164 "policies" : {
165 "type" : "array",
166 "items" : {
167 "$ref" : "#/definitions/ToscaPolicyIdentifier"
168 }
169 },
170 "currentInstanceCount" : {
171 "type" : "integer",
172 "format" : "int32"
173 },
174 "desiredInstanceCount" : {
175 "type" : "integer",
176 "format" : "int32"
177 },
178 "properties" : {
179 "type" : "object",
180 "additionalProperties" : {
181 "type" : "string"
182 }
183 },
184 "pdpInstances" : {
185 "type" : "array",
186 "items" : {
187 "$ref" : "#/definitions/Pdp"
188 }
189 }
190 }
191 },
192 "ToscaPolicyIdentifier" : {
193 "type" : "object",
194 "properties" : {
195 "name" : {
196 "type" : "string"
197 },
198 "version" : {
199 "type" : "string"
200 }
201 }
202 },
203 "ToscaPolicyTypeIdentifier" : {
204 "type" : "object",
205 "properties" : {
206 "name" : {
207 "type" : "string"
208 },
209 "version" : {
210 "type" : "string"
211 }
212 }
Jim Hahnd5cc9482019-05-29 15:41:48 -0400213 }
214 }
Jim Hahn5eeeedd2019-12-11 16:25:56 -0500215}