NFVManoLogManagement.yaml 82.1 KB
Newer Older
1
openapi: 3.0.2
2

3
4
info:
  title: SOL009 - NFV-MANO Log Management interface
5
  description: |
6
7
    SOL009 - NFV-MANO Log Management interface

8
9
10
11
12
    IMPORTANT: Please note that this file might be not aligned to the current
    version of the ETSI Group Specification it refers to. In case of
    discrepancies the published ETSI Group Specification takes precedence.

    Please report bugs to https://forge.etsi.org/rep/nfv/SOL009/issues
13

14
15
  contact:
    name: NFV-SOL WG
16
17
18
  license:
    name: ETSI Forge copyright notice
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
19
20
  version: 1.0.1-impl:etsi.org:ETSI_NFV_OpenAPI:1

21
externalDocs:
22
  description: ETSI GS NFV-SOL 009 V3.6.1
23
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/009/03.05.01_60/gs_NFV-SOL009v030501p.pdf
24
25
26
27
28
29
30

servers:
  - url: http://127.0.0.1/nfvmanologm/v1
  - url: https://127.0.0.1/nfvmanologm/v1

paths:
  "/api_versions":
31
      $ref: '../endpoints/SOL009_endpoints.yaml#/endpoints/api_versions'
Giacomo Bernini's avatar
upd    
Giacomo Bernini committed
32

33
34
35
36
37
  "/log_jobs":
    description: >-
      This resource represents logging jobs. The API consumer can use this resource to create and query logging jobs.
    post:
      description: >-
38
        The POST method creates a logging job. See clause 8.5.3.3.1.
39
      parameters:
40
41
42
43
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/ContentType"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
44
45
46
47
      requestBody:
        $ref: "#/components/requestBodies/CreateLoggingJobRequest"
      responses:
        "201":
Muhammad Hamza's avatar
Muhammad Hamza committed
48
          $ref: '#/components/responses/LoggingJobs.Post.201'
49
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
50
          $ref: ../components/SOL009_resp.yaml#/components/responses/400
51
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
52
          $ref: ../components/SOL009_resp.yaml#/components/responses/401
53
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
54
          $ref: ../components/SOL009_resp.yaml#/components/responses/403
55
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
56
          $ref: ../components/SOL009_resp.yaml#/components/responses/404
57
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
58
          $ref: ../components/SOL009_resp.yaml#/components/responses/405
59
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
60
          $ref: ../components/SOL009_resp.yaml#/components/responses/406
61
        "422":
Giacomo Bernini's avatar
Giacomo Bernini committed
62
          $ref: ../components/SOL009_resp.yaml#/components/responses/422
63
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
64
          $ref: ../components/SOL009_resp.yaml#/components/responses/500
65
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
66
          $ref: ../components/SOL009_resp.yaml#/components/responses/503
67
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
68
          $ref: ../components/SOL009_resp.yaml#/components/responses/504
69
70
    get:
      description: >-
71
        The API consumer can use this method to retrieve information about logging jobs. See clause 8.5.3.3.2.
72
      parameters:
Giacomo Bernini's avatar
Giacomo Bernini committed
73
        - $ref: "#/components/parameters/filter.LoggingJobs"
74
75
76
        - $ref: "../components/SOL009_params.yaml#/components/parameters/all_fields"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/fields"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/exclude_fields"
Giacomo Bernini's avatar
Giacomo Bernini committed
77
        - $ref: "#/components/parameters/exclude_default.LoggingJobs"
78
79
80
81
        - $ref: "../components/SOL009_params.yaml#/components/parameters/nextpage_opaque_marker"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
82
83
      responses:
        "200":
Muhammad Hamza's avatar
Muhammad Hamza committed
84
          $ref: '#/components/responses/LoggingJobs.Get.200'
85
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
86
          $ref: ../components/SOL009_resp.yaml#/components/responses/400
87
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
88
          $ref: ../components/SOL009_resp.yaml#/components/responses/401
89
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
90
          $ref: ../components/SOL009_resp.yaml#/components/responses/403
91
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
92
          $ref: ../components/SOL009_resp.yaml#/components/responses/404
93
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
94
          $ref: ../components/SOL009_resp.yaml#/components/responses/405
95
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
96
          $ref: ../components/SOL009_resp.yaml#/components/responses/406
97
        "422":
Giacomo Bernini's avatar
Giacomo Bernini committed
98
          $ref: ../components/SOL009_resp.yaml#/components/responses/422
99
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
100
          $ref: ../components/SOL009_resp.yaml#/components/responses/500
101
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
102
          $ref: ../components/SOL009_resp.yaml#/components/responses/503
103
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
104
          $ref: ../components/SOL009_resp.yaml#/components/responses/504
105
106
107
108
109

  "/log_jobs/{logJobId}":
    description: >-
      This resource represents an individual logging job. The API consumer can use this resource to delete
      and read the underlying logging job.
Giacomo Bernini's avatar
Giacomo Bernini committed
110
111
    parameters:
      - $ref: "#/components/parameters/logJobId"
112
113
    get:
      description: >-
114
        The API consumer can use this method for reading an individual logging job. See clause 8.5.4.3.2.
115
      parameters:
116
117
118
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
119
120
121

      responses:
        "200":
Muhammad Hamza's avatar
Muhammad Hamza committed
122
          $ref: '#/components/responses/IndividualLoggingJob.Get.200'
123
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
124
          $ref: ../components/SOL009_resp.yaml#/components/responses/400
125
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
126
          $ref: ../components/SOL009_resp.yaml#/components/responses/401
127
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
128
          $ref: ../components/SOL009_resp.yaml#/components/responses/403
129
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
130
          $ref: ../components/SOL009_resp.yaml#/components/responses/404
131
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
132
          $ref: ../components/SOL009_resp.yaml#/components/responses/405
133
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
134
          $ref: ../components/SOL009_resp.yaml#/components/responses/406
135
        "422":
Giacomo Bernini's avatar
Giacomo Bernini committed
136
          $ref: ../components/SOL009_resp.yaml#/components/responses/422
137
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
138
          $ref: ../components/SOL009_resp.yaml#/components/responses/500
139
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
140
          $ref: ../components/SOL009_resp.yaml#/components/responses/503
141
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
142
          $ref: ../components/SOL009_resp.yaml#/components/responses/504
143
144
145

    delete:
      description: >-
146
        This method terminates an individual logging job. See clause 8.5.4.3.5.
147
      parameters:
148
149
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
150
151
      responses:
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
152
          $ref: '#/components/responses/IndividualLoggingJob.Delete.204'
153
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
154
          $ref: '../components/SOL009_resp.yaml#/components/responses/400'
155
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
156
          $ref: '../components/SOL009_resp.yaml#/components/responses/401'
157
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
158
          $ref: '../components/SOL009_resp.yaml#/components/responses/403'
159
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
160
          $ref: '../components/SOL009_resp.yaml#/components/responses/404'
161
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
162
          $ref: '../components/SOL009_resp.yaml#/components/responses/405'
163
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
164
          $ref: '../components/SOL009_resp.yaml#/components/responses/406'
165
        "422":
Giacomo Bernini's avatar
Giacomo Bernini committed
166
          $ref: '../components/SOL009_resp.yaml#/components/responses/422'
167
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
168
          $ref: '../components/SOL009_resp.yaml#/components/responses/500'
169
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
170
          $ref: '../components/SOL009_resp.yaml#/components/responses/503'
171
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
172
          $ref: '../components/SOL009_resp.yaml#/components/responses/504'
173
174
175
176
177
178
179
180

  "/log_jobs/{logJobId}/log_reports/{logReportId}":
    description: >-
      This resource represents an individual log report. The API consumer can use this resource to read
      information about a log report.
      The log report provides metadata information about a log and location information of the log file
      from where it can be obtained.
      NOTE:	The present document does not specify the mechanism how to retrieve the log files.
Giacomo Bernini's avatar
Giacomo Bernini committed
181
182
    parameters:
      - $ref: "#/components/parameters/logJobId"
Giacomo Bernini's avatar
Giacomo Bernini committed
183
      - $ref: "#/components/parameters/logReportId"
184
185
    get:
      description: >-
186
        The API consumer can use this method for reading an individual log report. See clause 8.5.5.3.2.
187
      parameters:
188
189
190
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
191
192
      responses:
        "200":
193
          $ref: '#/components/responses/LogReport.Get.200'
194
        "202":
195
          $ref: '#/components/responses/LogReport.Get.202'
196
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
197
          $ref: '../components/SOL009_resp.yaml#/components/responses/400'
198
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
199
          $ref: '../components/SOL009_resp.yaml#/components/responses/401'
200
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
201
          $ref: '../components/SOL009_resp.yaml#/components/responses/403'
202
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
203
          $ref: '../components/SOL009_resp.yaml#/components/responses/404'
204
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
205
          $ref: '../components/SOL009_resp.yaml#/components/responses/405'
206
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
207
          $ref: '../components/SOL009_resp.yaml#/components/responses/406'
208
        "422":
Giacomo Bernini's avatar
Giacomo Bernini committed
209
          $ref: '../components/SOL009_resp.yaml#/components/responses/422'
210
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
211
          $ref: '../components/SOL009_resp.yaml#/components/responses/500'
212
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
213
          $ref: '../components/SOL009_resp.yaml#/components/responses/503'
214
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
215
          $ref: '../components/SOL009_resp.yaml#/components/responses/504'
216
217
218
219
220
221
222
223
224
225
226

  "/log_jobs/{logJobId}/compile_log":
    description: >-
      This resource represents the "Compile log" operation. The API consumer can use this resource to request
      compiling the logged data, collected via a logging job, into a file and creating the associated log report.
      As the result of successfully processing this request, a new "Individual log report" resource shall be created.
      Two modes of operation, synchronous or asynchronous, can take place depending on whether the NFV-MANO functional
      entity can compile the log data and create the log report immediately. In the synchronous case, which is
      indicated by responding with "201 Created", the resource shall be created before the "201 Created" response
      is returned. In the asynchronous case, which is indicated by responding with "202 Accepted", the resource may
      be created after the response is returned.
Giacomo Bernini's avatar
Giacomo Bernini committed
227
228
    parameters:
      - $ref: "#/components/parameters/logJobId"
229
230
231
    post:
      description: >-
        The POST method requests to compile the logged data into a file and create an associated log report.
232
        See clause 8.5.6.3.1.
233
      parameters:
234
235
236
237
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/ContentType"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
238
239
240
      requestBody:
        $ref: "#/components/requestBodies/CompileLogRequest"
      responses:
Muhammad Hamza's avatar
Muhammad Hamza committed
241
242
        "201":
          $ref: '#/components/responses/LogReportCompiled.Post.201'
243
        "202":
244
          $ref: '#/components/responses/LogReportCompiled.Post.202'
245
        "303":
246
          $ref: '#/components/responses/LogReportCompiled.Post.303'
247
        "422":
248
          $ref: '#/components/responses/LogReportCompiled.Post.422'
249
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
250
          $ref: '../components/SOL009_resp.yaml#/components/responses/400'
251
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
252
          $ref: '../components/SOL009_resp.yaml#/components/responses/401'
253
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
254
          $ref: '../components/SOL009_resp.yaml#/components/responses/403'
255
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
256
          $ref: '../components/SOL009_resp.yaml#/components/responses/404'
257
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
258
          $ref: '../components/SOL009_resp.yaml#/components/responses/405'
259
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
260
          $ref: '../components/SOL009_resp.yaml#/components/responses/406'
261
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
262
          $ref: '../components/SOL009_resp.yaml#/components/responses/500'
263
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
264
          $ref: '../components/SOL009_resp.yaml#/components/responses/503'
265
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
266
          $ref: '../components/SOL009_resp.yaml#/components/responses/504'
267
268

  "/subscriptions":
269
270
271
272
273
    description: >-
      This resource represents subscriptions. The client can use this resource to subscribe to notifications
      related to NFV-MANO performance management and to query its subscriptions.
    post:
      description: >-
274
        The POST method creates a new subscription. See clause 8.5.7.3.1.
275
      parameters:
276
277
278
279
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/ContentType"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
280
281
282
283
      requestBody:
        $ref: '#/components/requestBodies/LogmSubscriptionRequest'
      responses:
        "201":
Muhammad Hamza's avatar
Muhammad Hamza committed
284
          $ref: '#/components/responses/Subscriptions.Post.201'
285
        "303":
Muhammad Hamza's avatar
Muhammad Hamza committed
286
          $ref: '#/components/responses/Subscriptions.Post.303'
287
        "422":
Giacomo Bernini's avatar
Giacomo Bernini committed
288
          $ref: '../components/SOL009_resp.yaml#/components/responses/422'
289
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
290
          $ref: '../components/SOL009_resp.yaml#/components/responses/400'
291
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
292
          $ref: '../components/SOL009_resp.yaml#/components/responses/401'
293
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
294
          $ref: '../components/SOL009_resp.yaml#/components/responses/403'
295
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
296
          $ref: '../components/SOL009_resp.yaml#/components/responses/404'
297
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
298
          $ref: '../components/SOL009_resp.yaml#/components/responses/405'
299
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
300
          $ref: '../components/SOL009_resp.yaml#/components/responses/406'
301
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
302
          $ref: '../components/SOL009_resp.yaml#/components/responses/500'
303
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
304
          $ref: '../components/SOL009_resp.yaml#/components/responses/503'
305
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
306
          $ref: '../components/SOL009_resp.yaml#/components/responses/504'
307
308
309
      callbacks:
        LogReportAvailableNotification:
          $ref: '#/components/callbacks/LogReportAvailableNotification'
310
311
312
    get:
      description: >-
        The API consumer can use this method to query the list of active subscriptions to log management
313
        notifications subscribed by the API consumer. See clause 8.5.7.3.2.
314
315

      parameters:
Giacomo Bernini's avatar
Giacomo Bernini committed
316
        - $ref: "#/components/parameters/filter.LogmSubscriptions"
317
318
319
320
        - $ref: "../components/SOL009_params.yaml#/components/parameters/nextpage_opaque_marker"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
321
322
      responses:
        "200":
Muhammad Hamza's avatar
Muhammad Hamza committed
323
          $ref: '#/components/responses/Subscriptions.Get.200'
324
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
325
          $ref: '../components/SOL009_resp.yaml#/components/responses/400'
326
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
327
          $ref: '../components/SOL009_resp.yaml#/components/responses/401'
328
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
329
          $ref: '../components/SOL009_resp.yaml#/components/responses/403'
330
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
331
          $ref: '../components/SOL009_resp.yaml#/components/responses/404'
332
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
333
          $ref: '../components/SOL009_resp.yaml#/components/responses/405'
334
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
335
          $ref: '../components/SOL009_resp.yaml#/components/responses/406'
336
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
337
          $ref: '../components/SOL009_resp.yaml#/components/responses/500'
338
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
339
          $ref: '../components/SOL009_resp.yaml#/components/responses/503'
340
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
341
          $ref: '../components/SOL009_resp.yaml#/components/responses/504'
342
343

  "/subscriptions/{subscriptionId}":
344
345
346
347
348
349
350
351
352
    description: >-
      This resource represents an individual subscription for notifications about log management related events.
      The API consumer can use this resource to read and to terminate a subscription to notifications related
      o NFV-MANO log management.
    parameters:
      - $ref: "#/components/parameters/subscriptionId"
    get:
      description: >-
        The API consumer can use this method for reading an individual subscription about log management
353
        notifications subscribed by the API consumer. See clause 8.5.8.3.2.
354
      parameters:
355
356
357
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
358
359
      responses:
        "200":
Muhammad Hamza's avatar
Muhammad Hamza committed
360
          $ref: '#/components/responses/Subscription.Get.200'
361
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
362
          $ref: '../components/SOL009_resp.yaml#/components/responses/400'
363
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
364
          $ref: '../components/SOL009_resp.yaml#/components/responses/401'
365
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
366
          $ref: '../components/SOL009_resp.yaml#/components/responses/403'
367
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
368
          $ref: '../components/SOL009_resp.yaml#/components/responses/404'
369
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
370
          $ref: '../components/SOL009_resp.yaml#/components/responses/405'
371
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
372
          $ref: '../components/SOL009_resp.yaml#/components/responses/406'
373
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
374
          $ref: '../components/SOL009_resp.yaml#/components/responses/500'
375
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
376
          $ref: '../components/SOL009_resp.yaml#/components/responses/503'
377
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
378
          $ref: '../components/SOL009_resp.yaml#/components/responses/504'
379

380
381
    delete:
      description: >-
382
        This method terminates an individual subscription. See clause 8.5.8.3.5.
383
      parameters:
384
385
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
386
387
      responses:
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
388
          $ref: '#/components/responses/Subscription.Delete.204'
389
        "400":
Giacomo Bernini's avatar
Giacomo Bernini committed
390
          $ref: '../components/SOL009_resp.yaml#/components/responses/400'
391
        "401":
Giacomo Bernini's avatar
Giacomo Bernini committed
392
          $ref: '../components/SOL009_resp.yaml#/components/responses/401'
393
        "403":
Giacomo Bernini's avatar
Giacomo Bernini committed
394
          $ref: '../components/SOL009_resp.yaml#/components/responses/403'
395
        "404":
Giacomo Bernini's avatar
Giacomo Bernini committed
396
          $ref: '../components/SOL009_resp.yaml#/components/responses/404'
397
        "405":
Giacomo Bernini's avatar
Giacomo Bernini committed
398
          $ref: '../components/SOL009_resp.yaml#/components/responses/405'
399
        "406":
Giacomo Bernini's avatar
Giacomo Bernini committed
400
          $ref: '../components/SOL009_resp.yaml#/components/responses/406'
401
        "422":
Giacomo Bernini's avatar
Giacomo Bernini committed
402
          $ref: '../components/SOL009_resp.yaml#/components/responses/422'
403
        "500":
Giacomo Bernini's avatar
Giacomo Bernini committed
404
          $ref: '../components/SOL009_resp.yaml#/components/responses/500'
405
        "503":
Giacomo Bernini's avatar
Giacomo Bernini committed
406
          $ref: '../components/SOL009_resp.yaml#/components/responses/503'
407
        "504":
Giacomo Bernini's avatar
Giacomo Bernini committed
408
          $ref: '../components/SOL009_resp.yaml#/components/responses/504'
409
410
411

components:
  parameters:
Giacomo Bernini's avatar
Giacomo Bernini committed
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
    filter.LoggingJobs:
      name: filter
      description: >
        Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013.

        The NFV-MANO functional entity shall support receiving this parameter as part of the URI query string.
        The API consumer may supply this parameter.

        All attribute names that appear in the FmSubscription and in data types referenced from it shall be supported
        by the NFV-MANO functional entity in the filter expression.
      in: query
      required: false
      schema:
        type: string
    exclude_default.LoggingJobs:
      name: exclude_default
      description: >
        Indicates to exclude the following complex attributes from the response. See clause 5.3 of ETSI GS NFV-SOL 013
        for details. The NFV-MANO functional entity shall support this parameter.

        The following attributes shall be excluded from the LoggingJob structure in the response body if this parameter
        is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided:
        •	logReports
      in: query
      required: false
      schema:
        type: string
    filter.LogmSubscriptions:
      name: filter
      description: >
        Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013.

        The NFV-MANO functional entity shall support receiving this parameter as part of the URI query string.
        The API consumer may supply this parameter.

        All attribute names that appear in the LogmSubscription and in data types referenced from it shall be supported
        by the NFV-MANO functional entity in the filter expression.
      in: query
      required: false
      schema:
        type: string
453
454
455
456
457
458
459
    logJobId:
      name: logJobId
      in: path
      description: >-
        Identifier of the logging job.
      required: true
      schema:
460
        $ref: '../components/SOL009_schemas.yaml#/components/schemas/Identifier'
Giacomo Bernini's avatar
Giacomo Bernini committed
461
462
    logReportId:
      name: logReportId
Giacomo Bernini's avatar
Giacomo Bernini committed
463
464
465
466
467
      in: path
      description: >-
        Identifier of the report.
      required: true
      schema:
468
        $ref: '../components/SOL009_schemas.yaml#/components/schemas/Identifier'
469
470
471
472
473
474
475
    subscriptionId:
      name: subscriptionId
      in: path
      description: >-
        Identifier of the subscription
      required: true
      schema:
476
        $ref: '../components/SOL009_schemas.yaml#/components/schemas/Identifier'
477
478

  requestBodies:
479
480
481
482
483
484
485
    LogmSubscriptionRequest:
      description: >-
        Details of the subscription to be created
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LogmSubscriptionRequest"
Sana Zulfiqar's avatar
Sana Zulfiqar committed
486
487
      required: true

488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
    CreateLoggingJobRequest:
      description: >-
        This type represents a request to create a logging job. It shall comply with the provisions
        defined in table 8.6.2.5-1.
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CreateLoggingJobRequest"
      required: true
    CompileLogRequest:
      description: >-
        Log compilation request.
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CompileLogRequest"
      required: true
505
506
507
508
509
510
511
    LogReportAvailableNotification:
      description: >-
        Notification about the availability of a log report.
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LogReportAvailableNotification"
Sana Zulfiqar's avatar
Sana Zulfiqar committed
512
      required: true
513
514

  responses:
Muhammad Hamza's avatar
Muhammad Hamza committed
515
    Subscription.Delete.204:
Muhammad Hamza's avatar
Muhammad Hamza committed
516
517
518
      description: >
        204 NO CONTENT

519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
        Shall be returned when the "Individual subscription" resource has been deleted successfully.
        The response body shall be empty.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string

Muhammad Hamza's avatar
Muhammad Hamza committed
539
    Subscription.Get.200:
Muhammad Hamza's avatar
Muhammad Hamza committed
540
541
542
      description: >
        200 OK

543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
        Shall be returned when the subscription has been read successfully.
        The response body shall contain a representation of the "Individual subscription" resource,
        as defined in clause 8.6.2.3.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LogmSubscription"

Muhammad Hamza's avatar
Muhammad Hamza committed
568
    Subscriptions.Get.200:
Muhammad Hamza's avatar
Muhammad Hamza committed
569
570
571
      description: >
        200 OK

572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
        Shall be returned when the list of subscriptions has been queried successfully.
        The response body shall contain in an array the representations of all active subscriptions of
        the functional block that invokes the method, i.e. zero or more representations of log management
        subscriptions as defined in clause 8.6.2.3.
        If the "filter" URI parameter was supplied in the request, the data in the response body shall have
        been transformed according to the rules specified in clause 5.2.2 of ETSI GS NFV-SOL 013.
        If the NFV-MANO functional entity supports alternative 2 (paging) according to clause 5.4.2.1 of
        ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall follow
        the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013 .
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: "#/components/schemas/LogmSubscription"

Muhammad Hamza's avatar
Muhammad Hamza committed
605
    Subscriptions.Post.201:
Muhammad Hamza's avatar
Muhammad Hamza committed
606
607
608
      description: >
        201 CREATED

609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
        Shall be returned when the subscription has been created successfully.
        A representation of the created "Individual subscription" resource shall be returned in the response body,
        as defined in clause 8.6.2.3.
        The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created
        "Individual subscription" resource.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
        Location:
          description: >
            URI of the "Individual log report" resource just created
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LogmSubscription"

Muhammad Hamza's avatar
Muhammad Hamza committed
641
    Subscriptions.Post.303:
Muhammad Hamza's avatar
Muhammad Hamza committed
642
643
644
      description: >
        303 SEE OTHER

645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
        Shall be returned when a subscription with the same callbackURI and the same filter already exists and the
        policy of the NFV-MANO functional entity is to not create redundant subscriptions.
        The HTTP response shall include a "Location" HTTP header that contains the resource URI of the existing
        "Individual subscription" resource.
        The response body shall be empty.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
        Location:
          description: >
            URI of the "Individual log report" resource just created
          schema:
            type: string

Muhammad Hamza's avatar
Muhammad Hamza committed
673
674
675
676
    LogReportCompiled.Post.201:
      description: >
        201 CREATED

677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
        Shall be returned for a successful compilation of the log data and creation of the associated log report
        (synchronous mode).
        The response body shall contain a representation of the log report resource, as defined in clause 8.6.2.7.
        The HTTP response shall include a "Location" HTTP header that indicate the URI of the
        "Individual log report" resource just created
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
        Location:
          description: >
            URI of the "Individual log report" resource just created
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LogReport"

709
710
    subscriptions.post.422:
      description: >
Muhammad Hamza's avatar
Muhammad Hamza committed
711
        422 UNPROCESSABLE ENTITY
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744

        Shall be returned upon the following error: The content type
        of the payload body is supported and the payload body of a request
        contains syntactically correct data but the data cannot be processed.

        The general cause for this error and its handling is specified in
        clause 6.4 of ETSI GS NFV-SOL 013, including rules for the presence
        of the response body.

        Specifically in case of this resource, the response code 422 shall also
        be returned if the API producer has tested the Notification endpoint as
        described in clause 8.5.9.3.2 and the test has failed.

        In this case, the "detail" attribute in the "ProblemDetails" structure
        shall convey more information about the error.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "../components/SOL009_schemas.yaml#/components/schemas/ProblemDetails"

745
    LogReportCompiled.Post.202:
Muhammad Hamza's avatar
Muhammad Hamza committed
746
747
748
      description: >
        202 ACCEPTED

749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
        Shall be returned when the request has been accepted for processing, and it is expected to take some
        time to compile the log file and create the associated log report (asynchronous mode).
        The response body shall be empty.
        The HTTP response shall include a "Location" HTTP header that indicates the URI of the
        "Individual log report" resource that will be created once the log file compilation is completed.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
        Location:
          description: >
            The URI of the "Individual log report" resource that will be created once the log file
            compilation is completed.
          schema:
            type: string

778
    LogReportCompiled.Post.303:
Muhammad Hamza's avatar
Muhammad Hamza committed
779
780
781
      description: >
        303 SEE OTHER

782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
        Shall be returned when a log data compilation and report creation is already ongoing, or a log report has just been
        created, for the specified logging job at the time of processing the request.
        The response body shall be empty.
        The HTTP response shall include a "Location" HTTP header that contains the resource URI of the log report
        resource just created, or to be created by the ongoing compilation and report creation.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
        Location:
          description: >
            The URI of the log report resource just created, or to be created by the ongoing compilation
            and report creation
          schema:
            type: string

811
    LogReportCompiled.Post.422:
Muhammad Hamza's avatar
Muhammad Hamza committed
812
813
814
      description: >
        422 UNPROCESSABLE ENTITY

815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
        The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013,
        including rules for the presence of the response body.
        Specifically, in case of this task resource, the response code 422 shall also be returned if the
        "objectInstanceId" value provided in the payload body of the request does not correspond to an object
        instance for which log data is being collected by the logging job represented by this resource.
        The response body shall contain a ProblemDetails structure, in which the "detail" attribute should
        convey more information about the error.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
842
            $ref: '../components/SOL009_schemas.yaml#/components/schemas/ProblemDetails'
843

844
    LogReport.Get.200:
Muhammad Hamza's avatar
Muhammad Hamza committed
845
846
847
      description: >
        200 OK

848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
        Shall be returned when information of an individual log report has been read successfully.
        The response body shall contain a representation of the "Individual log report" resource, as
        defined in clause 8.6.2.7.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LogReport"

873
    LogReport.Get.202:
Muhammad Hamza's avatar
Muhammad Hamza committed
874
875
876
      description: >
        202 ACCEPTED

877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
        Shall be returned if the creation of the log report is ongoing and no log report is available yet
        (applicable in asynchronous mode of the "Compile log task" resource).
        The response body shall be empty.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string

Muhammad Hamza's avatar
Muhammad Hamza committed
898
    IndividualLoggingJob.Get.200:
Muhammad Hamza's avatar
Muhammad Hamza committed
899
900
901
      description: >
        200 OK

902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
        Shall be returned when information about an individual logging job has been read successfully.
        The response body shall contain a representation of the "Individual logging job" resource,
        as defined in clause 8.6.2.6.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LoggingJob"

Muhammad Hamza's avatar
Muhammad Hamza committed
927
    IndividualLoggingJob.Delete.204:
Muhammad Hamza's avatar
Muhammad Hamza committed
928
929
930
      description: >
        204 NO CONTENT

931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
        Shall be returned when the logging job has been deleted successfully.
        The response body shall be empty.
      headers:
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >-
            Version of the API used in the response.
          schema:
            type: string

Muhammad Hamza's avatar
Muhammad Hamza committed
947
    LoggingJobs.Post.201:
Muhammad Hamza's avatar
Muhammad Hamza committed
948
949
950
      description: >
        201 CREATED

951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
        The response body contains the Application Context as it was created
        by the MEC system
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
            request has provided an invalid authorization token.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/LoggingJob"
974

Muhammad Hamza's avatar
Muhammad Hamza committed
975
    LoggingJobs.Get.200:
Muhammad Hamza's avatar
Muhammad Hamza committed
976
977
978
      description: >
        200 OK

979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
        Shall be returned when information about zero or more logging jobs has been queried successfully.

        The response body shall contain in an array the representations of zero or more logging jobs, as
        defined in clause 8.6.2.6.

        If the "filter" URI parameter or one of the "all_fields", "fields" (if supported), "exclude_fields"
        (if supported) or "exclude_default" URI parameters was supplied in the request, the data in the response
        body shall have been transformed according to the rules specified in clauses 5.2.2 and 5.3.2 of
        ETSI GS NFV-SOL 013, respectively.

        If the NFV-MANO functional entity supports alternative 2 (paging) according to clause 5.4.2.1 of
        ETSI GS NFV-SOL 013 for this resource, inclusion of the Link HTTP header in this response shall
        follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013.
      headers:
        Content-Type:
          description: The MIME type of the body of the response.
          schema:
            type: string
        WWW-Authenticate:
          description: >
            Challenge if the corresponding HTTP request has not provided
            authorization, or error details if the corresponding HTTP
For faster browsing, not all history is shown. View entire blame