open5gs/lib/sbi/support/standard/TS29522_ApplyingBdtPolicy.yaml

250 lines
8.4 KiB
YAML
Raw Normal View History

2020-05-18 21:00:37 +00:00
openapi: 3.0.0
info:
title: 3gpp-applying-bdt-policy
version: 1.0.0.alpha-3
description: |
API for applicying BDT policy
2020-06-04 18:12:05 +00:00
© 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
2020-05-18 21:00:37 +00:00
All rights reserved.
externalDocs:
description: 3GPP TS 29.522 V16.3.0; 5G System; Network Exposure Function Northbound APIs.
url: 'http://www.3gpp.org/ftp/Specs/archive/29_series/29.522/'
security:
- {}
- oAuth2ClientCredentials: []
servers:
- url: '{apiRoot}/3gpp-appliying-bdt-policy/v1'
variables:
apiRoot:
default: https://example.com
description: apiRoot as defined in subclause 5.2.4 of 3GPP TS 29.122.
paths:
/{afId}/subscriptions:
parameters:
- name: afId
in: path
description: Identifier of the AF
required: true
schema:
type: string
get:
summary: read all of the active subscriptions for the AF
tags:
- ApplyingBdtPolicy API AF level GET Operation
responses:
'200':
description: OK.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AppliedBdtPolicy'
'400':
$ref: 'TS29122_CommonData.yaml#/components/responses/400'
'401':
$ref: 'TS29122_CommonData.yaml#/components/responses/401'
'403':
$ref: 'TS29122_CommonData.yaml#/components/responses/403'
'404':
$ref: 'TS29122_CommonData.yaml#/components/responses/404'
'406':
$ref: 'TS29122_CommonData.yaml#/components/responses/406'
'429':
$ref: 'TS29122_CommonData.yaml#/components/responses/429'
'500':
$ref: 'TS29122_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29122_CommonData.yaml#/components/responses/503'
default:
$ref: 'TS29122_CommonData.yaml#/components/responses/default'
post:
summary: Creates a new subscription resource
tags:
- ApplyingBdtPolicy API Subscription level POST Operation
requestBody:
description: Request to create a new subscription resource
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AppliedBdtPolicy'
responses:
'201':
description: Created (Successful creation of subscription)
content:
application/json:
schema:
$ref: '#/components/schemas/AppliedBdtPolicy'
headers:
Location:
description: 'Contains the URI of the newly created resource'
required: true
schema:
type: string
'400':
$ref: 'TS29122_CommonData.yaml#/components/responses/400'
'401':
$ref: 'TS29122_CommonData.yaml#/components/responses/401'
'403':
$ref: 'TS29122_CommonData.yaml#/components/responses/403'
'404':
$ref: 'TS29122_CommonData.yaml#/components/responses/404'
'411':
$ref: 'TS29122_CommonData.yaml#/components/responses/411'
'413':
$ref: 'TS29122_CommonData.yaml#/components/responses/413'
'415':
$ref: 'TS29122_CommonData.yaml#/components/responses/415'
'429':
$ref: 'TS29122_CommonData.yaml#/components/responses/429'
'500':
$ref: 'TS29122_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29122_CommonData.yaml#/components/responses/503'
default:
$ref: 'TS29122_CommonData.yaml#/components/responses/default'
/{afId}/subscriptions/{subscriptionId}:
parameters:
- name: afId
in: path
description: Identifier of the AF
required: true
schema:
type: string
- name: subscriptionId
in: path
description: Identifier of the subscription resource
required: true
schema:
type: string
get:
summary: read an active subscriptions for the SCS/AS and the subscription Id
tags:
- ApplyingBdtPolicy API Subscription level GET Operation
responses:
'200':
description: OK (Successful get the active subscription)
content:
application/json:
schema:
$ref: '#/components/schemas/AppliedBdtPolicy'
'400':
$ref: 'TS29122_CommonData.yaml#/components/responses/400'
'401':
$ref: 'TS29122_CommonData.yaml#/components/responses/401'
'403':
$ref: 'TS29122_CommonData.yaml#/components/responses/403'
'404':
$ref: 'TS29122_CommonData.yaml#/components/responses/404'
'406':
$ref: 'TS29122_CommonData.yaml#/components/responses/406'
'429':
$ref: 'TS29122_CommonData.yaml#/components/responses/429'
'500':
$ref: 'TS29122_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29122_CommonData.yaml#/components/responses/503'
default:
$ref: 'TS29122_CommonData.yaml#/components/responses/default'
patch:
summary: Updates/replaces an existing subscription resource
tags:
- ApplyingBdtPolicy API subscription level PATCH Operation
requestBody:
required: true
content:
application/merge-patch+json:
schema:
$ref: '#/components/schemas/AppliedBdtPolicyPatch'
responses:
'200':
description: OK. The subscription was modified successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/AppliedBdtPolicy'
'400':
$ref: 'TS29122_CommonData.yaml#/components/responses/400'
'401':
$ref: 'TS29122_CommonData.yaml#/components/responses/401'
'403':
$ref: 'TS29122_CommonData.yaml#/components/responses/403'
'404':
$ref: 'TS29122_CommonData.yaml#/components/responses/404'
'411':
$ref: 'TS29122_CommonData.yaml#/components/responses/411'
'413':
$ref: 'TS29122_CommonData.yaml#/components/responses/413'
'415':
$ref: 'TS29122_CommonData.yaml#/components/responses/415'
'429':
$ref: 'TS29122_CommonData.yaml#/components/responses/429'
'500':
$ref: 'TS29122_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29122_CommonData.yaml#/components/responses/503'
default:
$ref: 'TS29122_CommonData.yaml#/components/responses/default'
delete:
summary: Deletes an already existing subscription
tags:
- ApplyingBdtPolicy API Subscription level DELETE Operation
responses:
'204':
description: No Content (Successful deletion of the existing subscription)
'400':
$ref: 'TS29122_CommonData.yaml#/components/responses/400'
'401':
$ref: 'TS29122_CommonData.yaml#/components/responses/401'
'403':
$ref: 'TS29122_CommonData.yaml#/components/responses/403'
'404':
$ref: 'TS29122_CommonData.yaml#/components/responses/404'
'429':
$ref: 'TS29122_CommonData.yaml#/components/responses/429'
'500':
$ref: 'TS29122_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29122_CommonData.yaml#/components/responses/503'
default:
$ref: 'TS29122_CommonData.yaml#/components/responses/default'
components:
securitySchemes:
oAuth2ClientCredentials:
type: oauth2
flows:
clientCredentials:
tokenUrl: '{tokenUrl}'
scopes: {}
schemas:
AppliedBdtPolicy:
type: object
properties:
externalGroupId:
$ref: 'TS29122_CommonData.yaml#/components/schemas/ExternalGroupId'
gpsi:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'
bdtRefId:
$ref: 'TS29122_CommonData.yaml#/components/schemas/BdtReferenceId'
suppFeat:
$ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
required:
- bdtRefId
- suppFeat
oneOf:
- required: [gpsi]
- required: [externalGroupId]
AppliedBdtPolicyPatch:
type: object
properties:
bdtRefId:
$ref: 'TS29122_CommonData.yaml#/components/schemas/BdtReferenceId'
required:
- bdtRefId