summaryrefslogtreecommitdiffstats
path: root/kubernetes/dcaegen2-services/resources/external/schemas/sa91-rel16/FileDataReportingMnS.yaml
blob: 2d1a4fb16d930f5853b52691c4d31416ac8dd124 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
openapi: 3.0.1
info:
  title: TS 28.532 File data reporting Service
  version: 16.6.0
  description: >-
    OAS 3.0.1 specification of the File data reporting Management Service © 2020,
    3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All
    rights reserved.
externalDocs:
  description: 3GPP TS 28.532 V16.5.0; Generic management services
  url: 'http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/'
servers:
  - url: '{MnSRoot}/FileDataReportingMnS/{MnSversion}'
    variables:
      MnSRoot:
        description: See subclause 4.4 of TS 32.158
        default: http://example.com/3GPPManagement 
      version:
        description: Indicates the current version of the specification
        default: 16.5.0
paths:
  /Files:
    get:
      summary: Read resources of information of available files
      description: With HTTP GET, resources of information of available files are read. The resources to be read are identified with the path component (base resource) and the query component (fileaType, beginTime and endTime) of the URI. The fields query component allows to select the resource properties to be returned.
      parameters:
        - name: fileType
          in: query
          description: This parameter identifies the type of management data that the file contains to select the resources from the collection resources identified with the path component of the URI.
          required: true
          schema:
            $ref: '#/components/schemas/fileType-Type'
        - name: beginTime
          in: query
          description: This parameter identifies the time stamp no later than which the file became available to select the resources from the collection resources identified with the path component of the URI.
          required: true
          schema:
            $ref: '#/components/schemas/dateTime-Type'
        - name: endTime
          in: query
          description: This parameter identifies the time stamp no earlier than which the file became available to select the resources from the collection resources identified with the path component of the URI.
          required: true
          schema:
            $ref: '#/components/schemas/dateTime-Type'
      responses:
        '200':
          description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/fileInfoRetrieval-ResponseType'
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
  /subscriptions:
    post:
      summary: Create a subscription
      description: To create a subscription the representation of the subscription is POSTed on the /subscriptions collection resource.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/subscription-RequestType'
      responses:
        '201':
          description: Success case ("201 Created"). The representation of the newly created subscription resource shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/subscription-ResponseType'
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
      callbacks:
        notifyFileReady:
          '{request.body#/consumerReference}':
            post:
              requestBody:
                required: true
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/notifyFileReady-NotifType'
              responses:
                '204':
                  description: Success case ("204 No Content"). The notification is successfully delivered. The response message body is absent.
                default:
                  description: Error case.
                  content:
                    application/json:
                      schema:
                        $ref: '#/components/schemas/error-ResponseType'
        notifyFilePreparationError:
          '{request.body#/consumerReference}':
            post:
              requestBody:
                required: true
                content:
                  application/json:
                    schema:
                      $ref: '#/components/schemas/notifyFilePreparationError-NotifType'
              responses:
                '204':
                  description: Success case ("204 No Content"). The notification is successfully delivered. The response message body is absent.
                default:
                  description: Error case.
                  content:
                    application/json:
                      schema:
                        $ref: '#/components/schemas/error-ResponseType'
    delete:
      summary: Delete all subscriptions made with a specific consumerReferenceId
      description: The subscriptions are deleted by deleting the corresponding subscription resources. The resources to be deleted are identified with the path component of the URI pointing to the /subscription collection resource and filtering on the consumerReferenceId provided in the query part.
      parameters:
        - name: consumerReferenceId
          in: query
          description: Identifies the subscriptions to be deleted.
          required: true
          schema:
            $ref: '#/components/schemas/consumerReferenceId-QueryType'
      responses:
        '204':
          description: Success case ("204 No Content"). The subscription resources have been deleted. The response message body is absent.
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
  '/subscriptions/{subscriptionId}':
    delete:
      summary: Delete a single subscription
      description: The subscription is deleted by deleting the corresponding subscription resource. The resource to be deleted is identified with the path component of the URI.
      parameters:
        - name: subscriptionId
          in: path
          description: Identifies the subscription to be deleted.
          required: true
          schema:
            $ref: '#/components/schemas/subscriptionId-PathType'
      responses:
        '204':
          description: Success case ("204 No Content"). The subscription resource has been deleted. The response message body is absent.
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
components:
  schemas:
    dateTime-Type:
      type: string
      format: date-Time
    uri-Type:
      type: string
    long-Type:
      type: string
      format: long
    additionalText-Type:
      type: string
    reason-Type:
      type: string
    fileInfoRetrieval-ResponseType:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/fileInfo-Type'
    fileInfo-Type:
      type: object
      properties:
        fileLocation:
          $ref: '#/components/schemas/uri-Type'
        fileSize:
          $ref: '#/components/schemas/long-Type'
        fileReadyTime:
          $ref: '#/components/schemas/dateTime-Type'
        fileExpirationTime:
          $ref: '#/components/schemas/dateTime-Type'
        fileCompression:
          type: string
        fileFormat:
          type: string
        fileType:
          $ref: '#/components/schemas/fileType-Type'
    error-ResponseType:
      type: object
      properties:
        error:
          type: object
          properties:
            errorInfo:
              type: string
    fileType-Type:
      type: string
      enum:
        - PERFORMANCE
        - TRACE
        - ANALYTICS
        - PROPRIETARY
    header-Type:
      description: Header used in notifications as notification header
      type: object
      properties:
        uri:
          $ref: '#/components/schemas/uri-Type'
        notificationId:
          $ref: '#/components/schemas/notificationId-Type'
        notificationType:
          $ref: '#/components/schemas/notificationType-Type'
        eventTime:
          $ref: '#/components/schemas/dateTime-Type'
    subscriptionId-PathType:
      type: string
    filter-Type:
      type: string
    notificationId-Type:
      $ref: '#/components/schemas/long-Type'
    notificationType-Type:
      type: string
      enum:
        - notifyFileReady
        - notifyFilePreparationError
    subscription-ResourceType:
      type: object
      properties:
        consumerReference:
          $ref: '#/components/schemas/uri-Type'
        timeTick:
          $ref: '#/components/schemas/long-Type'
        filter:
          $ref: '#/components/schemas/filter-Type'
    subscription-RequestType:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/subscription-ResourceType'
    subscription-ResponseType:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/subscription-ResourceType'
    consumerReferenceId-QueryType:
      $ref: '#/components/schemas/uri-Type'
    notifyFileReady-NotifType:
      type: object
      properties:
        header:
          $ref: '#/components/schemas/header-Type'
        body:
          type: object
          properties:
            fileInfoList:
              type: array
              items:
                $ref: '#/components/schemas/fileInfo-Type'
            additionalText:
              $ref: '#/components/schemas/additionalText-Type'
    notifyFilePreparationError-NotifType:
      type: object
      properties:
        header:
          $ref: '#/components/schemas/header-Type'
        body:
          type: object
          properties:
            fileInfoList:
              type: array
              items:
                $ref: '#/components/schemas/fileInfo-Type'
            reason:
              $ref: '#/components/schemas/reason-Type'
            additionalText:
              $ref: '#/components/schemas/additionalText-Type'