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