VNFPackageManagementNotification.yaml 11.7 KB
Newer Older
1
2
3
swagger: "2.0"

info:
Giacomo Bernini's avatar
Giacomo Bernini committed
4
  version: "2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1"
5
  title: SOL003 - VNF Package Management Notification interface
6
  description: >
7
8
    SOL003 - VNF Package Management Notification interface

9

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

14

15
16
17
18
19
20
    In clause 4.3.2 of ETSI GS NFV-SOL 003 v2.4.1, an attribute-based
    filtering mechanism is defined. This mechanism is currently not
    included in the corresponding OpenAPI design for this GS version. Changes
    to the attribute-based filtering mechanism are being considered in v2.5.1
    of this GS for inclusion in the corresponding future ETSI NFV OpenAPI
    design.
21

22
    Please report bugs to https://forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=61&product=NFV&resolution=
23
24
25
  license:
    name: "ETSI Forge copyright notice"
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
26
27

externalDocs:
28
29
  description: ETSI GS NFV-SOL 003 V2.8.1
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.08.01_60/gs_NFV-SOL003v020801p.pdf
30

31
basePath: "/callback/v2"
32
33
34
35
36
37
38
39
40
41

schemes:
  - https

consumes:
  - "application/json"
produces:
  - "application/json"

paths:
42
43
44
  ###############################################################################
  # Notification endpoint VnfPackageOnboardingNotification                      #
  ###############################################################################
45
46
47
48
  '/URI-is-provided-by-the-client-when-creating-the-subscription-VnfPackageOnboardingNotification':
    #SOL003 location: 10.4.9
    post:
      description: >
49
50
51
52
53
        Notify.
        The POST method delivers a notification from the API producer to an API consumer.
        The API consumer shall have previously created an "Individual subscription" resource with a matching filter.
        This method shall follow the provisions specified in the tables 10.4.9.3.1-1 and 10.4.9.3.1-2
        for URI query parameters, request and response data structures, and response codes.
54
55
56
57
58
59
60
      parameters:
        - name: VnfPackageOnboardingNotification
          description: A notification about on-boarding of a VNF package.
          in: body
          required: true
          schema:
            $ref: "definitions/VNFPackageManagementNotification_def.yaml#/definitions/VnfPackageOnboardingNotification"
Gergely Csatari's avatar
Gergely Csatari committed
61
62
63
64
65
66
67
68
69
70
71
72
73
74
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
75
76
77
78
79
80
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
81
82
      responses:
        204:
83
          description: >
84
            204 NO CONTENT
Gergely Csatari's avatar
Gergely Csatari committed
85

86
            Shall be returned when the notification has been delivered successfully.
Gergely Csatari's avatar
Gergely Csatari committed
87
88
89
90
91
92
93
94
95
          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.
              type: string
              maximum: 1
              minimum: 0
96
97
98
99
100
101
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
102
103
104
105
106
107
        400:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
        401:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
        403:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
108
109
        405:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405"
110
111
112
113
114
115
        406:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
        500:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
        503:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
moscatelli's avatar
moscatelli committed
116

117
118
    get:
      description: >
119
        The GET method allows the API producer to test the notification endpoint that is provided by the API consumer
120
121
122
        e.g. during subscription.
        This method shall follow the provisions specified in the tables 10.4.9.3.2-1 and 10.4.9.3.2-2
        for URI query parameters, request and response data structures, and response codes.
Gergely Csatari's avatar
Gergely Csatari committed
123
124
125
126
127
128
129
130
      parameters:
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
131
132
133
134
135
136
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
137
138
      responses:
        204:
139
          description: >
140
            204 NO CONTENT
Gergely Csatari's avatar
Gergely Csatari committed
141

142
            Shall be returned to indicate that the notification endpoint has been tested successfully.
143
            The response body shall be empty.
Gergely Csatari's avatar
Gergely Csatari committed
144
145
146
147
148
149
150
151
152
          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.
              type: string
              maximum: 1
              minimum: 0
153
154
155
156
157
158
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
159
160
161
162
163
164
        400:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
        401:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
        403:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
165
166
        405:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405"
167
168
169
170
171
172
        406:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
        500:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
        503:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
173

174
175
176
  ###############################################################################
  # Notification endpoint VnfPackageChangeNotification                          #
  ###############################################################################
177
178
179
180
  '/URI-is-provided-by-the-client-when-creating-the-subscription-VnfPackageChangeNotification':
    #SOL003 location: 10.4.9
    post:
      description: >
181
182
183
184
185
        Notify.
        The POST method delivers a notification from the API producer to an API consumer.
        The API consumer shall have previously created an "Individual subscription" resource with a matching filter.
        This method shall follow the provisions specified in the tables 10.4.9.3.1-1 and 10.4.9.3.1-2
        for URI query parameters, request and response data structures, and response codes.
186
187
188
189
190
191
192
193
      parameters:
        - name: VnfPackageChangeNotification
          description: >
            A notification about changes of status in a VNF package.
          in: body
          required: true
          schema:
            $ref: "definitions/VNFPackageManagementNotification_def.yaml#/definitions/VnfPackageChangeNotification"
Gergely Csatari's avatar
Gergely Csatari committed
194
195
196
197
198
199
200
201
202
203
204
205
206
207
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
208
209
210
211
212
213
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
214
215
      responses:
        204:
216
          description: >
217
            204 NO CONTENT
Gergely Csatari's avatar
Gergely Csatari committed
218

219
            Shall be returned when the notification has been delivered successfully.
Gergely Csatari's avatar
Gergely Csatari committed
220
221
222
223
224
225
226
227
228
          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.
              type: string
              maximum: 1
              minimum: 0
229
230
231
232
233
234
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
235
236
237
238
239
240
        400:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
        401:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
        403:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
241
242
        405:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405"
243
244
245
246
247
248
        406:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
        500:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
        503:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
moscatelli's avatar
moscatelli committed
249

250
251
    get:
      description: >
252
        The GET method allows the API producer to test the notification endpoint that is provided by the API consumer
253
254
255
         e.g. during subscription.
        This method shall follow the provisions specified in the tables 10.4.9.3.2-1 and 10.4.9.3.2-2
        for URI query parameters, request and response data structures, and response codes.
Gergely Csatari's avatar
Gergely Csatari committed
256
257
258
259
260
261
262
263
      parameters:
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
264
265
266
267
268
269
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
270
271
      responses:
        204:
272
          description: >
273
            204 NO CONTENT
Gergely Csatari's avatar
Gergely Csatari committed
274

275
            Shall be returned to indicate that the notification endpoint has been tested successfully.
276
            The response body shall be empty.
Gergely Csatari's avatar
Gergely Csatari committed
277
278
279
280
281
282
283
284
285
          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.
              type: string
              maximum: 1
              minimum: 0
286
287
288
289
290
291
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
292
293
294
295
296
297
        400:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
        401:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
        403:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
298
299
        405:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405"
300
301
302
303
304
        406:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
        500:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
        503:
305
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"