VNFLifecycleManagementNotification.yaml 10.9 KB
Newer Older
1
openapi: 3.0.2
2
3
4

info:
  title: SOL002 - VNF Lifecycle Management Notification interface
5
  description: |
6
    SOL002 - VNF Lifecycle Management Notification interface
Giacomo Bernini's avatar
Giacomo Bernini committed
7
8
9
10
11

    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.

12
    Please report bugs to https://forge.etsi.org/rep/nfv/SOL002-SOL003/issues
Giacomo Bernini's avatar
Giacomo Bernini committed
13

14
15
  contact:
    name: NFV-SOL WG
16
  license:
moscatelli's avatar
moscatelli committed
17
    name: ETSI Forge copyright notice
18
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
19
  version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1
20
21

externalDocs:
Sana Zulfiqar's avatar
Sana Zulfiqar committed
22
23
  description: ETSI GS NFV-SOL 002 V3.5.1
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.05.01_60/gs_NFV-SOL002v030501p.pdf
24

25
servers:
Giacomo Bernini's avatar
Giacomo Bernini committed
26
27
  - url: http://127.0.0.1/callback/v2
  - url: https://127.0.0.1/callback/v2
28
29

paths:
30
  /URI_is_provided_by_the_client_when_creating_the_subscription-VnfLcmOperationOccurrenceNotification:
31
    parameters:
32
33
34
35
36
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Version
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Authorization
    get:
      description: |
        The GET method allows the server to test the notification endpoint that is provided by the API consumer,
Sana Zulfiqar's avatar
Sana Zulfiqar committed
37
        e.g. during subscription. See clause 5.4.20.3.2.
38
39
      responses:
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
40
          $ref: '#/components/responses/VNFLCMNotification.Get.204'
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
        "400":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
        "401":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
        "403":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
        "405":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
        "406":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
        "500":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
        "503":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503

56
    post:
57
      description: |
58
        The POST method delivers a notification from the API producer to an API consumer. The API consumer shall have
Sana Zulfiqar's avatar
Sana Zulfiqar committed
59
        previously created an "Individual subscription" resource with a matching filter. See clause 5.4.20.3.1.
60
      parameters:
61
62
63
        - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/VnfLcmOperationOccurrenceNotification'
64
      responses:
65
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
66
          $ref: '#/components/responses/VNFLCMNotification.Post.204'
67
68
69
70
71
72
73
74
75
76
77
78
79
80
        "400":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
        "401":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
        "403":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
        "405":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
        "406":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
        "500":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
        "503":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
81

82
  /URI_is_provided_by_the_client_when_creating_the_subscription-VnfIdentifierCreationNotification:
83
84
85
    parameters:
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Version
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Authorization
86
    get:
87
88
      description: |
        The GET method allows the server to test the notification endpoint that is provided by the API consumer,
Sana Zulfiqar's avatar
Sana Zulfiqar committed
89
        e.g. during subscription. See clause 5.4.20.3.2.
90
      responses:
91
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
92
          $ref: '#/components/responses/VNFLCMNotification.Get.204'
93
94
95
96
97
98
99
100
101
102
103
104
105
106
        "400":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
        "401":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
        "403":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
        "405":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
        "406":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
        "500":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
        "503":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
107
108

    post:
109
      description: |
110
        The POST method delivers a notification from the API producer to an API consumer. The API consumer shall have
Sana Zulfiqar's avatar
Sana Zulfiqar committed
111
        previously created an "Individual subscription" resource with a matching filter. See clause 5.4.20.3.1.
112
      parameters:
113
114
115
        - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/VnfIdentifierCreationNotification'
116
      responses:
117
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
118
          $ref: '#/components/responses/VNFLCMNotification.Post.204'
119
120
121
122
123
124
125
126
127
128
129
130
131
132
        "400":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
        "401":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
        "403":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
        "405":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
        "406":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
        "500":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
        "503":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
133

134
  /URI_is_provided_by_the_client_when_creating_the_subscription-VnfIdentifierDeletionNotification:
135
136
137
    parameters:
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Version
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Authorization
138
    get:
139
140
      description: |
        The GET method allows the server to test the notification endpoint that is provided by the API consumer,
Sana Zulfiqar's avatar
Sana Zulfiqar committed
141
        e.g. during subscription. See clause 5.4.20.3.2.
142
      responses:
143
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
144
          $ref: '#/components/responses/VNFLCMNotification.Get.204'
145
146
147
148
149
150
151
152
153
154
155
156
157
158
        "400":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
        "401":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
        "403":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
        "405":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
        "406":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
        "500":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
        "503":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
159
160

    post:
161
      description: |
162
        The POST method delivers a notification from the API producer to an API consumer. The API consumer shall have
Sana Zulfiqar's avatar
Sana Zulfiqar committed
163
        previously created an "Individual subscription" resource with a matching filter. See clause 5.4.20.3.1.
164
      parameters:
165
166
167
        - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/VnfIdentifierDeletionNotification'
168
      responses:
169
        "204":
Muhammad Hamza's avatar
Muhammad Hamza committed
170
          $ref: '#/components/responses/VNFLCMNotification.Post.204'
171
172
173
174
175
176
177
178
179
180
181
182
183
184
        "400":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/400
        "401":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/401
        "403":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/403
        "405":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/405
        "406":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/406
        "500":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/500
        "503":
          $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/503
185

186
187
188
189
190
191
192
193
194
195
components:
  requestBodies:
    VnfLcmOperationOccurrenceNotification:
      description: |
        A notification about lifecycle changes triggered by a VNF LCM operation occurrence.
      content:
        application/json:
          schema:
            $ref: ./definitions/SOL002VNFLifecycleManagementNotification_def.yaml#/definitions/VnfLcmOperationOccurrenceNotification
      required: true
196

197
198
199
200
201
202
203
204
    VnfIdentifierCreationNotification:
      description: |
        A notification about lifecycle changes triggered by a VNF LCM operation occurrence.
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierCreationNotification
      required: true
205

206
207
208
209
210
211
212
213
214
215
    VnfIdentifierDeletionNotification:
      description: |
        A notification about the deletion of a VNF identifier and the related "Individual VNF instance" resource.
      content:
        application/json:
          schema:
            $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierDeletionNotification
      required: true

  responses:
Muhammad Hamza's avatar
Muhammad Hamza committed
216
    VNFLCMNotification.Get.204:
217
      description: |
Muhammad Hamza's avatar
Muhammad Hamza committed
218
        204 NO CONTENT
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
        Shall be returned to indicate the notification endpoint has been  tested successfully. The response body
        shall be empty.
      headers:
        Version:
          description: |
            Version of the API used in the response.
          style: simple
          explode: false
          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.
          style: simple
          explode: false
          schema:
            type: string
      content: {}

Muhammad Hamza's avatar
Muhammad Hamza committed
239
    VNFLCMNotification.Post.204:
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
      description: |
        204 NO CONTENT
        Shall be returned when the notification has been delivered successfully. The response body shall be empty.
      headers:
        Version:
          description: |
            Version of the API used in the response.
          style: simple
          explode: false
          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.
          style: simple
          explode: false
          schema:
            type: string
      content: {}