add href to service inventory responses
[externalapi/nbi.git] / docs / offeredapis / serviceInventory / asciiDoc.adoc
1 = API ServiceInventory
2
3
4 [[_overview]]
5 == Overview
6
7 === Api URL
8
9 https://api-designer.sso.infra.ftgroup/swagger-ui/?url=https://api-designer.sso.infra.ftgroup/api/1.0/apis/5ymwb6l1dR/swagger.json[Swagger UI]
10
11
12 https://plantuml.rd.francetelecom.fr/proxy?fmt=svg&src=https://api-designer.sso.infra.ftgroup/api/1.0/apis/5ymwb6l1dR/plantuml&noCache=137264.0[plant UML UI]
13
14 serviceInventory API designed for ONAP Beijing Release.
15 This API is build from TMF open API18.0 (applying TMF Guideline 3.0)
16 only operation GET (by id & byList) for resource serviceSpecification is available
17
18
19 === Version information
20 [%hardbreaks]
21 __Version__ : 3.0.0_inProgress
22
23
24 === URI scheme
25 [%hardbreaks]
26 __Host__ : serverRoot
27 __BasePath__ : /nbi/api/v3
28 __Schemes__ : HTTPS
29
30
31 === Tags
32
33 * Service
34
35
36 === Produces
37
38 * `application/json;charset=utf-8`
39
40
41 [[_paths]]
42 == Resources
43
44 [[_service_resource]]
45 === Service
46
47 [[_servicefind]]
48 ==== List services
49 ....
50 GET /service
51 ....
52
53
54 ===== Description
55 This operation list service entities.
56 Attribute selection is restricted.
57 fields attribute may be used to filter retrieved attribute(s) for each service
58
59 Specific business errors for current operation will be encapsulated in
60
61 HTTP Response 422 Unprocessable entity
62
63
64 ===== Parameters
65
66 [options="header", cols=".^2,.^3,.^4"]
67 |===
68 |Type|Name|Schema
69 |**Query**|**fields** +
70 __optional__|string
71 |**Query**|**id** +
72 __optional__|string
73 |**Query**|**relatedParty.id** +
74 __optional__|string
75 |**Query**|**serviceSpecification.id** +
76 __optional__|string
77 |**Query**|**serviceSpecification.name** +
78 __optional__|string
79 |===
80
81
82 ===== Responses
83
84 [options="header", cols=".^2,.^14,.^4"]
85 |===
86 |HTTP Code|Description|Schema
87 |**200**|Success|< <<_listservice,ListService>> > array
88 |**400**|Bad Request
89
90 List of supported error codes:
91 - 20: Invalid URL parameter value
92 - 21: Missing body
93 - 22: Invalid body
94 - 23: Missing body field
95 - 24: Invalid body field
96 - 25: Missing header
97 - 26: Invalid header value
98 - 27: Missing query-string parameter
99 - 28: Invalid query-string parameter value|<<_errorrepresentation,ErrorRepresentation>>
100 |**401**|Unauthorized
101
102 List of supported error codes:
103 - 40: Missing credentials
104 - 41: Invalid credentials
105 - 42: Expired credentials|<<_errorrepresentation,ErrorRepresentation>>
106 |**403**|Forbidden
107
108 List of supported error codes:
109 - 50: Access denied
110 - 51: Forbidden requester
111 - 52: Forbidden user
112 - 53: Too many requests|<<_errorrepresentation,ErrorRepresentation>>
113 |**404**|Not Found
114
115 List of supported error codes:
116 - 60: Resource not found|<<_errorrepresentation,ErrorRepresentation>>
117 |**422**|Unprocessable entity
118
119 Functional error|<<_errorrepresentation,ErrorRepresentation>>
120 |**500**|Internal Server Error
121
122 List of supported error codes:
123 - 1: Internal error|<<_errorrepresentation,ErrorRepresentation>>
124 |**503**|Service Unavailable
125
126 List of supported error codes:
127 - 5: The service is temporarily unavailable
128 - 6: Orange API is over capacity, retry later !|<<_errorrepresentation,ErrorRepresentation>>
129 |===
130
131
132 ===== Produces
133
134 * `application/json;charset=utf-8`
135
136
137 [[_serviceget]]
138 ==== Retrieve a service
139 ....
140 GET /service/{id}
141 ....
142
143
144 ===== Description
145 This operation retrieves a service entity.
146 Attribute selection is enabled for all first level attributes.
147
148 Specific business errors for current operation will be encapsulated in
149
150 HTTP Response 422 Unprocessable entity
151
152
153 ===== Parameters
154
155 [options="header", cols=".^2,.^3,.^4"]
156 |===
157 |Type|Name|Schema
158 |**Path**|**id** +
159 __required__|string
160 |**Query**|**relatedParty.id** +
161 __optional__|string
162 |**Query**|**serviceSpecification.id** +
163 __optional__|string
164 |**Query**|**serviceSpecification.name** +
165 __optional__|string
166 |===
167
168
169 ===== Responses
170
171 [options="header", cols=".^2,.^14,.^4"]
172 |===
173 |HTTP Code|Description|Schema
174 |**200**|Success|<<_service,Service>>
175 |**400**|Bad Request
176
177 List of supported error codes:
178 - 20: Invalid URL parameter value
179 - 21: Missing body
180 - 22: Invalid body
181 - 23: Missing body field
182 - 24: Invalid body field
183 - 25: Missing header
184 - 26: Invalid header value
185 - 27: Missing query-string parameter
186 - 28: Invalid query-string parameter value|<<_errorrepresentation,ErrorRepresentation>>
187 |**401**|Unauthorized
188
189 List of supported error codes:
190 - 40: Missing credentials
191 - 41: Invalid credentials
192 - 42: Expired credentials|<<_errorrepresentation,ErrorRepresentation>>
193 |**403**|Forbidden
194
195 List of supported error codes:
196 - 50: Access denied
197 - 51: Forbidden requester
198 - 52: Forbidden user
199 - 53: Too many requests|<<_errorrepresentation,ErrorRepresentation>>
200 |**404**|Not Found
201
202 List of supported error codes:
203 - 60: Resource not found|<<_errorrepresentation,ErrorRepresentation>>
204 |**422**|Unprocessable entity
205
206 Functional error|<<_errorrepresentation,ErrorRepresentation>>
207 |**500**|Internal Server Error
208
209 List of supported error codes:
210 - 1: Internal error|<<_errorrepresentation,ErrorRepresentation>>
211 |**503**|Service Unavailable
212
213 List of supported error codes:
214 - 5: The service is temporarily unavailable
215 - 6: Orange API is over capacity, retry later !|<<_errorrepresentation,ErrorRepresentation>>
216 |===
217
218
219 ===== Produces
220
221 * `application/json;charset=utf-8`
222
223
224 [[_definitions]]
225 == Definitions
226
227 [[_errorrepresentation]]
228 === ErrorRepresentation
229 This class is used to describe error.
230 for nbi Beijing release we do not manage additional error for serviceCatalog
231
232
233 [options="header", cols=".^3,.^11,.^4"]
234 |===
235 |Name|Description|Schema
236 |**@schemaLocation** +
237 __optional__|it provides a link to the schema describing a REST resource.|string
238 |**@type** +
239 __optional__|The class type of a REST resource.|string
240 |**code** +
241 __required__|Application related code (as defined in the API or from a common list)|integer (int32)
242 |**message** +
243 __optional__|Text that provide more details and corrective actions related to the error. This can be shown to a client user.|string
244 |**reason** +
245 __required__|Text that explains the reason for error. This can be shown to a client user.|string
246 |**referenceError** +
247 __optional__|url pointing to documentation describing the error|string
248 |**status** +
249 __optional__|http error code extension like 400-2|string
250 |===
251
252
253 [[_listrelatedpartyref]]
254 === ListRelatedPartyRef
255 This class is used to structure list of service(s) retrieved
256
257
258 [options="header", cols=".^3,.^11,.^4"]
259 |===
260 |Name|Description|Schema
261 |**id** +
262 __optional__|Unique identifier of a related party|string
263 |**role** +
264 __optional__|Role played by the related party - only role “ONAPcustomer” is managed in Beijing release.|string
265 |===
266
267
268 [[_listservice]]
269 === ListService
270 This class is used to structure list of service(s) retrieved
271
272
273 [options="header", cols=".^3,.^11,.^4"]
274 |===
275 |Name|Description|Schema
276 |**id** +
277 __optional__|Unique identifier of the service|string
278 |**name** +
279 __optional__|Name of the service|string
280 |**relatedParty** +
281 __optional__||<<_listrelatedpartyref,ListRelatedPartyRef>>
282 |**serviceSpecification** +
283 __optional__||<<_listservicespecificationref,ListServiceSpecificationRef>>
284 |===
285
286
287 [[_listservicespecificationref]]
288 === ListServiceSpecificationRef
289 This class is used to structure list of service(s) retrieved
290
291
292 [options="header", cols=".^3,.^11,.^4"]
293 |===
294 |Name|Description|Schema
295 |**id** +
296 __optional__|Unique identifier of the service specification|string
297 |**name** +
298 __optional__|Name of the required service specification|string
299 |===
300
301
302 [[_relatedpartyref]]
303 === RelatedPartyRef
304 RelatedParty reference. A related party defines party or party role linked to a specific entity.
305 Only ONAP Customer is managed in Beijing release.
306
307
308 [options="header", cols=".^3,.^11,.^4"]
309 |===
310 |Name|Description|Schema
311 |**@referredType** +
312 __optional__|Not managed in the Beijing release.|string
313 |**href** +
314 __optional__|Reference of a related party.
315 Not filled in Beijing release.|string
316 |**id** +
317 __optional__|Unique identifier of a related party|string
318 |**role** +
319 __optional__|Role played by the related party.
320 Filled with 'ONAPcustomer'|string
321 |===
322
323
324 [[_service]]
325 === Service
326 Instantiated service (service_instance) in AAI
327
328
329 [options="header", cols=".^3,.^11,.^4"]
330 |===
331 |Name|Description|Schema
332 |**@baseType** +
333 __optional__|Not managed in Beijing release|string
334 |**@schemaLocation** +
335 __optional__|Not managed in Beijing release|string
336 |**@type** +
337 __optional__|This attribute allows to dynamically extends TMF class. Not used in Beijing release.|string
338 |**characteristic** +
339 __optional__||< <<_servicecharacteristic,ServiceCharacteristic>> > array
340 |**hasStarted** +
341 __optional__|This is a Boolean attribute that, if TRUE, signifies that this Service has already been started. If the value of this attribute is FALSE, then this signifies that this Service has NOT been Started
342 Not managed in Beijing release|boolean
343 |**href** +
344 __optional__|Reference of the service
345 Not managed in Beijing release|string
346 |**id** +
347 __optional__|Unique identifier of the service - Valued with service-instance-id|string
348 |**name** +
349 __optional__|Name of the service - Valued with service-instance-name|string
350 |**relatedParty** +
351 __optional__||< <<_relatedpartyref,RelatedPartyRef>> > array
352 |**serviceSpecification** +
353 __optional__||<<_servicespecificationref,ServiceSpecificationRef>>
354 |**state** +
355 __optional__|State of the service. Not managed in Beijing release|string
356 |**supportingResource** +
357 __optional__||< <<_supportingresource,SupportingResource>> > array
358 |**type** +
359 __optional__|Service type - valued with 'service-instance'|string
360 |===
361
362
363 [[_servicecharacteristic]]
364 === ServiceCharacteristic
365 A list of name value pairs that define the service characteristics
366 Not managed in Beijing release.
367
368
369 [options="header", cols=".^3,.^11,.^4"]
370 |===
371 |Name|Description|Schema
372 |**name** +
373 __required__|Name of the characteristic
374 Not managed in Beijing release.|string
375 |**value** +
376 __optional__||<<_value,Value>>
377 |**valueType** +
378 __optional__|Type of value for this characteristic.
379 Not managed in Beijing release.|string
380 |===
381
382
383 [[_servicespecificationref]]
384 === ServiceSpecificationRef
385 Service specification reference: ServiceSpecification of this service (catalog information)
386
387
388 [options="header", cols=".^3,.^11,.^4"]
389 |===
390 |Name|Description|Schema
391 |**@referredType** +
392 __optional__|This attribute allows to dynamically extends TMF class. Valued with 'ONAPservice'. We used this features to add following attribute: invariantUUID|string
393 |**@schemaLocation** +
394 __optional__|Not managed in Beijing release|string
395 |**href** +
396 __optional__|Reference of the service specification.
397 not managed in Beijing release.|string
398 |**id** +
399 __optional__|Unique identifier of the service specification. valued to model-version-id|string
400 |**invariantUUID** +
401 __optional__|Additional attribute (not in the TMF API) - extended through @referredType - model-invariant-id|string
402 |**name** +
403 __optional__|Name of the required service specification|string
404 |**version** +
405 __optional__|Service specification version.
406 Not managed in Beijing release|string
407 |===
408
409
410 [[_supportingresource]]
411 === SupportingResource
412 Supporting resource - A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf
413
414
415 [options="header", cols=".^3,.^11,.^4"]
416 |===
417 |Name|Description|Schema
418 |**@referredType** +
419 __optional__|This attribute allows to dynamically extends TMF class. Valued with 'ONAP resource'. We used this features to add following attributes:
420  status
421  modelInvariantId
422  modelVersionId
423  modelCustomisationId|string
424 |**@schemaLocation** +
425 __optional__|Not managed in Beijing release.|string
426 |**href** +
427 __optional__|Reference of the supporting resource|string
428 |**id** +
429 __optional__|Unique identifier of the supporting resource - Valued to vnf-id|string
430 |**modelCustomisationId** +
431 __optional__|Additional attribute (not in the TMF API) - extended through @referredType - valued with model-customisation-id|string
432 |**modelInvariantId** +
433 __optional__|Additional attribute (not in the TMF API) - extended through @referredType - valued with model-invariant-id|string
434 |**modelVersionId** +
435 __optional__|Additional attribute (not in the TMF API) - extended through @referredType - valued with model-verson-id|string
436 |**name** +
437 __optional__|Name of the supporting resource - Valued with vnf_-name|string
438 |**role** +
439 __optional__|Not managed in Beijing release.|string
440 |**status** +
441 __optional__|Additional attribute (not in the TMF API) - extended through @referredType - valued with prov-status|string
442 |===
443
444
445 [[_value]]
446 === Value
447 Structure used to describe characteristic value.
448 Not managed in Beijing release.
449
450
451 [options="header", cols=".^3,.^11,.^4"]
452 |===
453 |Name|Description|Schema
454 |**@schemaLocation** +
455 __optional__|Not managed in Beijing release.|string
456 |**@type** +
457 __optional__|Not managed in Beijing release.|string
458 |**serviceCharacteristicValue** +
459 __optional__|Not managed in Beijing release.|string
460 |===
461