blob: ab623bbe6a5e3f95450272371f06e23237b20ea8 [file] [log] [blame]
MichaelMorrise020ca32021-03-18 11:40:48 +00001{
2 "openapi" : "3.0.1",
3 "info" : {
4 "contact" : {
5 "email" : "onap-discuss@lists.onap.org",
6 "name" : "ONAP",
7 "url" : "https://onap.readthedocs.io"
8 },
9 "description" : "SDC API for certifying services (SDCE-4)",
10 "license" : {
11 "name" : "Apache 2.0",
12 "url" : "http://www.apache.org/licenses/LICENSE-2.0"
13 },
14 "title" : "SPC API: SDCE-4",
15 "version" : "1.0"
16 },
17 "servers" : [ {
18 "description" : "SDCE-4 APIs",
19 "url" : "/sdc"
20 } ],
21 "paths" : {
22 "/v1/catalog/{componentCollection}/{componentId}/lifecycleState/{lifecycleOperation}" : {
23 "post" : {
24 "description" : "Change Resource lifecycle State",
25 "operationId" : "changeResourceState",
26 "parameters" : [ {
27 "description" : "validValues: resources / services / products",
28 "in" : "path",
29 "name" : "componentCollection",
30 "required" : true,
31 "schema" : {
32 "type" : "string",
33 "enum" : [ "resources", "services", "products" ]
34 }
35 }, {
36 "in" : "path",
37 "name" : "lifecycleOperation",
38 "required" : true,
39 "schema" : {
40 "type" : "string",
41 "enum" : [ "checkout, undoCheckout, checkin, certificationRequest, startCertification, failCertification, cancelCertification, certify" ]
42 }
43 }, {
44 "description" : "id of component to be changed",
45 "in" : "path",
46 "name" : "componentId",
47 "required" : true,
48 "schema" : {
49 "type" : "string"
50 }
51 }, {
52 "description" : "id of user initiating the operation",
53 "in" : "header",
54 "name" : "USER_ID",
55 "schema" : {
56 "type" : "string"
57 }
58 } ],
59 "requestBody" : {
60 "content" : {
61 "application/json" : {
62 "schema" : {
63 "type" : "string"
64 }
65 }
66 },
67 "description" : "LifecycleChangeInfo - relevant for checkin, failCertification, cancelCertification"
68 },
69 "responses" : {
70 "200" : {
71 "description" : "Resource state changed"
72 },
73 "403" : {
74 "description" : "Restricted operation"
75 },
76 "409" : {
77 "description" : "Resource already exist"
78 },
79 "default" : {
80 "content" : {
81 "application/json" : {
82 "schema" : {
83 "type" : "array",
84 "items" : {
85 "type" : "object",
86 "properties" : {
87 "allowedMethods" : {
88 "type" : "array",
89 "items" : {
90 "type" : "string"
91 },
92 "uniqueItems" : true
93 },
94 "cookies" : {
95 "type" : "object",
96 "additionalProperties" : {
97 "type" : "object",
98 "properties" : {
99 "comment" : {
100 "type" : "string"
101 },
102 "domain" : {
103 "type" : "string"
104 },
105 "expiry" : {
106 "type" : "string",
107 "format" : "date-time"
108 },
109 "httpOnly" : {
110 "type" : "boolean"
111 },
112 "maxAge" : {
113 "type" : "integer",
114 "format" : "int32"
115 },
116 "name" : {
117 "type" : "string"
118 },
119 "path" : {
120 "type" : "string"
121 },
122 "secure" : {
123 "type" : "boolean"
124 },
125 "value" : {
126 "type" : "string"
127 },
128 "version" : {
129 "type" : "integer",
130 "format" : "int32"
131 }
132 }
133 }
134 },
135 "date" : {
136 "type" : "string",
137 "format" : "date-time"
138 },
139 "entity" : {
140 "type" : "object"
141 },
142 "entityTag" : {
143 "type" : "object",
144 "properties" : {
145 "value" : {
146 "type" : "string"
147 },
148 "weak" : {
149 "type" : "boolean"
150 }
151 }
152 },
153 "headers" : {
154 "type" : "object",
155 "additionalProperties" : {
156 "type" : "array",
157 "items" : {
158 "type" : "object"
159 }
160 }
161 },
162 "language" : {
163 "type" : "object",
164 "properties" : {
165 "country" : {
166 "type" : "string"
167 },
168 "displayCountry" : {
169 "type" : "string"
170 },
171 "displayLanguage" : {
172 "type" : "string"
173 },
174 "displayName" : {
175 "type" : "string"
176 },
177 "displayScript" : {
178 "type" : "string"
179 },
180 "displayVariant" : {
181 "type" : "string"
182 },
183 "extensionKeys" : {
184 "type" : "array",
185 "items" : {
186 "type" : "string"
187 },
188 "uniqueItems" : true
189 },
190 "iso3Country" : {
191 "type" : "string"
192 },
193 "iso3Language" : {
194 "type" : "string"
195 },
196 "language" : {
197 "type" : "string"
198 },
199 "script" : {
200 "type" : "string"
201 },
202 "unicodeLocaleAttributes" : {
203 "type" : "array",
204 "items" : {
205 "type" : "string"
206 },
207 "uniqueItems" : true
208 },
209 "unicodeLocaleKeys" : {
210 "type" : "array",
211 "items" : {
212 "type" : "string"
213 },
214 "uniqueItems" : true
215 },
216 "variant" : {
217 "type" : "string"
218 }
219 }
220 },
221 "lastModified" : {
222 "type" : "string",
223 "format" : "date-time"
224 },
225 "length" : {
226 "type" : "integer",
227 "format" : "int32"
228 },
229 "links" : {
230 "type" : "array",
231 "items" : {
232 "type" : "object",
233 "properties" : {
234 "params" : {
235 "type" : "object",
236 "additionalProperties" : {
237 "type" : "string"
238 }
239 },
240 "rel" : {
241 "type" : "string"
242 },
243 "rels" : {
244 "type" : "array",
245 "items" : {
246 "type" : "string"
247 }
248 },
249 "title" : {
250 "type" : "string"
251 },
252 "type" : {
253 "type" : "string"
254 },
255 "uri" : {
256 "type" : "string",
257 "format" : "uri"
258 },
259 "uriBuilder" : {
260 "type" : "object"
261 }
262 }
263 },
264 "uniqueItems" : true
265 },
266 "location" : {
267 "type" : "string",
268 "format" : "uri"
269 },
270 "mediaType" : {
271 "type" : "object",
272 "properties" : {
273 "parameters" : {
274 "type" : "object",
275 "additionalProperties" : {
276 "type" : "string"
277 }
278 },
279 "subtype" : {
280 "type" : "string"
281 },
282 "type" : {
283 "type" : "string"
284 },
285 "wildcardSubtype" : {
286 "type" : "boolean"
287 },
288 "wildcardType" : {
289 "type" : "boolean"
290 }
291 }
292 },
293 "metadata" : {
294 "type" : "object",
295 "additionalProperties" : {
296 "type" : "array",
297 "items" : {
298 "type" : "object"
299 }
300 }
301 },
302 "status" : {
303 "type" : "integer",
304 "format" : "int32"
305 },
306 "statusInfo" : {
307 "type" : "object",
308 "properties" : {
309 "family" : {
310 "type" : "string",
311 "enum" : [ "INFORMATIONAL", "SUCCESSFUL", "REDIRECTION", "CLIENT_ERROR", "SERVER_ERROR", "OTHER" ]
312 },
313 "reasonPhrase" : {
314 "type" : "string"
315 },
316 "statusCode" : {
317 "type" : "integer",
318 "format" : "int32"
319 }
320 }
321 },
322 "stringHeaders" : {
323 "type" : "object",
324 "additionalProperties" : {
325 "type" : "array",
326 "items" : {
327 "type" : "string"
328 }
329 }
330 }
331 }
332 }
333 }
334 }
335 }
336 }
337 },
338 "servers" : [ {
339 "url" : "/sdc2/rest",
340 "variables" : { }
341 } ],
342 "tags" : [ "SDCE-4 APIs" ]
343 }
344 }
345 }
346}