github.com/free5gc/openapi@v1.0.8/Nnssf_NSSAIAvailability/api/openapi.yaml (about) 1 openapi: 3.0.0 2 3 info: 4 version: '1.0.0' 5 title: 'NSSF NSSAI Availability' 6 description: 'NSSF NSSAI Availability Service' 7 security: 8 - {} 9 - oAuth2Clientcredentials: 10 - nnssf-nssaiavailability 11 servers: 12 - url: '{apiRoot}/nnssf-nssaiavailability/v1' 13 variables: 14 apiRoot: 15 default: https://example.com 16 description: apiRoot as defined in subclause 4.4 of 3GPP TS 29.501 17 externalDocs: 18 description: 3GPP TS 29.531 V15.2.0; 5G System; Network Slice Selection Services; Stage 3 19 url: http://www.3gpp.org/ftp/Specs/archive/29_series/29.531/ 20 paths: 21 /nssai-availability/{nfId}: 22 put: 23 summary: Updates/replaces the NSSF with the S-NSSAIs the NF service consumer (e.g AMF)supports per TA 24 tags: 25 - NF Instance ID (Document) 26 operationId: NSSAIAvailabilityPut 27 parameters: 28 - name: nfId 29 in: path 30 description: Identifier of the NF service consumer instance 31 required: true 32 schema: 33 $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' 34 requestBody: 35 description: Parameters to update/replace at the NSSF, the S-NSSAIs supported per TA 36 required: true 37 content: 38 application/json: 39 schema: 40 $ref: '#/components/schemas/NssaiAvailabilityInfo' 41 responses: 42 '200': 43 description: OK (Successful update of SNSSAI information per TA) 44 content: 45 application/json: 46 schema: 47 $ref: '#/components/schemas/AuthorizedNssaiAvailabilityInfo' 48 '400': 49 $ref: 'TS29571_CommonData.yaml#/components/responses/400' 50 '401': 51 $ref: 'TS29571_CommonData.yaml#/components/responses/401' 52 '403': 53 $ref: 'TS29571_CommonData.yaml#/components/responses/403' 54 '404': 55 $ref: 'TS29571_CommonData.yaml#/components/responses/404' 56 57 '411': 58 $ref: 'TS29571_CommonData.yaml#/components/responses/411' 59 '413': 60 $ref: 'TS29571_CommonData.yaml#/components/responses/413' 61 '415': 62 $ref: 'TS29571_CommonData.yaml#/components/responses/415' 63 '429': 64 $ref: 'TS29571_CommonData.yaml#/components/responses/429' 65 '500': 66 $ref: 'TS29571_CommonData.yaml#/components/responses/500' 67 '503': 68 $ref: 'TS29571_CommonData.yaml#/components/responses/503' 69 default: 70 description: Unexpected error 71 72 patch: 73 summary: Updates an already existing S-NSSAIs per TA provided by the NF service consumer (e.g AMF) 74 tags: 75 - NF Instance ID (Document) 76 operationId: NSSAIAvailabilityPatch 77 parameters: 78 - name: nfId 79 in: path 80 description: Identifier of the NF service consumer instance 81 required: true 82 schema: 83 type: string 84 requestBody: 85 description: JSON Patch instructions to update at the NSSF, the S-NSSAIs supported per TA 86 required: true 87 content: 88 application/json-patch+json:: 89 schema: 90 $ref: '#/components/schemas/PatchDocument' 91 92 responses: 93 '200': 94 description: OK (Successful update of SNSSAI information per TA) 95 content: 96 application/json: 97 schema: 98 $ref: '#/components/schemas/AuthorizedNssaiAvailabilityInfo' 99 '400': 100 $ref: 'TS29571_CommonData.yaml#/components/responses/400' 101 '401': 102 $ref: 'TS29571_CommonData.yaml#/components/responses/401' 103 '403': 104 $ref: 'TS29571_CommonData.yaml#/components/responses/403' 105 106 '404': 107 $ref: 'TS29571_CommonData.yaml#/components/responses/404' 108 109 '411': 110 $ref: 'TS29571_CommonData.yaml#/components/responses/411' 111 '413': 112 $ref: 'TS29571_CommonData.yaml#/components/responses/413' 113 '415': 114 $ref: 'TS29571_CommonData.yaml#/components/responses/415' 115 '429': 116 $ref: 'TS29571_CommonData.yaml#/components/responses/429' 117 '500': 118 $ref: 'TS29571_CommonData.yaml#/components/responses/500' 119 '503': 120 $ref: 'TS29571_CommonData.yaml#/components/responses/503' 121 default: 122 description: Unexpected error 123 124 125 delete: 126 summary: Deletes an already existing S-NSSAIs per TA provided by the NF service consumer (e.g AMF) 127 tags: 128 - NF Instance ID (Document) 129 operationId: NSSAIAvailabilityDelete 130 parameters: 131 - name: nfId 132 in: path 133 description: Identifier of the NF service consumer instance 134 required: true 135 schema: 136 type: string 137 138 responses: 139 '204': 140 description: No Content (Successful deletion of SNSSAI information per TA) 141 '400': 142 $ref: 'TS29571_CommonData.yaml#/components/responses/400' 143 '401': 144 $ref: 'TS29571_CommonData.yaml#/components/responses/401' 145 '404': 146 $ref: 'TS29571_CommonData.yaml#/components/responses/404' 147 148 '429': 149 $ref: 'TS29571_CommonData.yaml#/components/responses/429' 150 '500': 151 $ref: 'TS29571_CommonData.yaml#/components/responses/500' 152 '503': 153 $ref: 'TS29571_CommonData.yaml#/components/responses/503' 154 155 default: 156 description: Unexpected error 157 158 159 /nssai-availability/subscriptions: 160 post: 161 summary: Creates subscriptions for notification about updates to NSSAI availability information 162 tags: 163 - Subscriptions (Collection) 164 operationId: NSSAIAvailabilityPost 165 requestBody: 166 description: Subscription for notification about updates to NSSAI availability information 167 required: true 168 content: 169 application/json: 170 schema: 171 $ref: '#/components/schemas/NssfEventSubscriptionCreateData' 172 callbacks: 173 nssaiAvailabilityNotification: 174 '{request.body#/nfNssaiAvailabilityUri}': 175 post: 176 requestBody: # contents of the callback message 177 required: true 178 content: 179 application/json: 180 schema: 181 $ref: '#/components/schemas/NssfEventNotification' 182 responses: 183 '204': 184 description: No Content (successful notification) 185 '400': 186 $ref: 'TS29571_CommonData.yaml#/components/responses/400' 187 '411': 188 $ref: 'TS29571_CommonData.yaml#/components/responses/411' 189 '413': 190 $ref: 'TS29571_CommonData.yaml#/components/responses/413' 191 '415': 192 $ref: 'TS29571_CommonData.yaml#/components/responses/415' 193 '429': 194 $ref: 'TS29571_CommonData.yaml#/components/responses/429' 195 '500': 196 $ref: 'TS29571_CommonData.yaml#/components/responses/500' 197 '503': 198 $ref: 'TS29571_CommonData.yaml#/components/responses/503' 199 default: 200 description: Unexpected error 201 202 203 responses: 204 '201': 205 description: Created (Successful creation of subscription for notification) 206 content: 207 application/json: 208 schema: 209 $ref: '#/components/schemas/NssfEventSubscriptionCreatedData' 210 headers: 211 Location: 212 description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/nnssf-nssaiavailability/v1/nssai-availability/subscriptions/{subscriptionId}' 213 required: true 214 schema: 215 type: string 216 '400': 217 $ref: 'TS29571_CommonData.yaml#/components/responses/400' 218 '401': 219 $ref: 'TS29571_CommonData.yaml#/components/responses/401' 220 '403': 221 $ref: 'TS29571_CommonData.yaml#/components/responses/403' 222 '404': 223 $ref: 'TS29571_CommonData.yaml#/components/responses/404' 224 225 '411': 226 $ref: 'TS29571_CommonData.yaml#/components/responses/411' 227 '413': 228 $ref: 'TS29571_CommonData.yaml#/components/responses/413' 229 '415': 230 $ref: 'TS29571_CommonData.yaml#/components/responses/415' 231 '429': 232 $ref: 'TS29571_CommonData.yaml#/components/responses/429' 233 '500': 234 $ref: 'TS29571_CommonData.yaml#/components/responses/500' 235 '503': 236 $ref: 'TS29571_CommonData.yaml#/components/responses/503' 237 default: 238 description: Unexpected error 239 240 /nssai-availability/subscriptions/{subscriptionId}: 241 delete: 242 summary: Deletes an already existing NSSAI availability notification subscription 243 tags: 244 - Subscription ID (Document) 245 operationId: NSSAIAvailabilityUnsubscribe 246 parameters: 247 - name: subscriptionId 248 in: path 249 description: Identifier of the subscription for notification 250 required: true 251 schema: 252 type: string 253 254 responses: 255 '204': 256 description: No Content (Successful deletion of subscription for NSSAI Availability notification) 257 '400': 258 $ref: 'TS29571_CommonData.yaml#/components/responses/400' 259 '401': 260 $ref: 'TS29571_CommonData.yaml#/components/responses/401' 261 '404': 262 $ref: 'TS29571_CommonData.yaml#/components/responses/404' 263 264 '429': 265 $ref: 'TS29571_CommonData.yaml#/components/responses/429' 266 '500': 267 $ref: 'TS29571_CommonData.yaml#/components/responses/500' 268 '503': 269 $ref: 'TS29571_CommonData.yaml#/components/responses/503' 270 271 default: 272 description: Unexpected error 273 274 components: 275 securitySchemes: 276 oAuth2ClientCredentials: 277 type: oauth2 278 flows: 279 clientCredentials: 280 tokenUrl: '{nrfApiRoot}/oauth2/token' 281 scopes: 282 nnssf-nssaiavailability: Access to the Nnssf_NSSAIAvailability API 283 284 schemas: 285 NssaiAvailabilityInfo: 286 type: object 287 required: 288 - supportedNssaiAvailabilityData 289 properties: 290 supportedNssaiAvailabilityData: 291 type: array 292 items: 293 $ref: '#/components/schemas/SupportedNssaiAvailabilityData' 294 minItems: 1 295 supportedFeatures: 296 $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' 297 298 SupportedNssaiAvailabilityData: 299 type: object 300 required: 301 - tai 302 - supportedSnssaiList 303 properties: 304 tai: 305 $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' 306 supportedSnssaiList: 307 type: array 308 items: 309 $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' 310 minItems: 1 311 312 AuthorizedNssaiAvailabilityData: 313 type: object 314 required: 315 - tai 316 - supportedSnssaiList 317 properties: 318 tai: 319 $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' 320 supportedSnssaiList: 321 type: array 322 items: 323 $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' 324 minItems: 1 325 restrictedSnssaiList: 326 type: array 327 items: 328 $ref: '#/components/schemas/RestrictedSnssai' 329 minItems: 1 330 331 RestrictedSnssai: 332 type: object 333 required: 334 - homePlmnId 335 - sNssaiList 336 properties: 337 homePlmnId: 338 $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId' 339 sNssaiList: 340 type: array 341 items: 342 $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' 343 minItems: 1 344 345 AuthorizedNssaiAvailabilityInfo: 346 type: object 347 required: 348 - authorizedNssaiAvailabilityData 349 properties: 350 authorizedNssaiAvailabilityData: 351 type: array 352 items: 353 $ref: '#/components/schemas/AuthorizedNssaiAvailabilityData' 354 minItems: 1 355 supportedFeatures: 356 $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' 357 358 NssfEventSubscriptionCreateData: 359 type: object 360 required: 361 - nfNssaiAvailabilityUri 362 - taiList 363 - event 364 properties: 365 nfNssaiAvailabilityUri: 366 $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' 367 taiList: 368 type: array 369 items: 370 $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' 371 minItems: 1 372 event: 373 $ref: '#/components/schemas/NssfEventType' 374 expiry: 375 $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' 376 377 NssfEventSubscriptionCreatedData: 378 type: object 379 required: 380 - subscriptionId 381 properties: 382 subscriptionId: 383 type: string 384 expiry: 385 $ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime' 386 authorizedNssaiAvailabilityData: 387 type: array 388 items: 389 $ref: '#/components/schemas/AuthorizedNssaiAvailabilityData' 390 minItems: 1 391 392 NssfEventNotification: 393 type: object 394 required: 395 - subscriptionId 396 - authorizedNssaiAvailabilityData 397 properties: 398 subscriptionId: 399 type: string 400 authorizedNssaiAvailabilityData: 401 type: array 402 items: 403 $ref: '#/components/schemas/AuthorizedNssaiAvailabilityData' 404 minItems: 1 405 NssfEventType: 406 anyOf: 407 - type: string 408 enum: 409 - SNSSAI_STATUS_CHANGE_REPORT 410 - type: string 411 PatchDocument: 412 type: array 413 items: 414 $ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem' 415 minItems: 1