3GPP TS 29.522 Slice Param Provision API

API for Network Slice Parameters Provisioning. An OpenAPI 3.0.0 document with 2 path(s), API version 1.0.0, published verbatim by 3GPP in 3GPP TS 29.522 as part of the 5G NEF Northbound (Network Exposure) suite and mirrored in the public 3GPP Forge GitLab repository.

OpenAPI Specification

3gpp-ts29522-sliceparamprovision.yml Raw ↑
openapi: 3.0.0

info:
  title: 3gpp-slice-pp
  version: 1.0.0
  description: |
    API for Network Slice Parameters Provisioning.
    © 2024, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).  
    All rights reserved.

externalDocs:
  description: >
    3GPP TS 29.522 V18.6.0; 5G System; Network Exposure Function Northbound APIs.
  url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/'

security:
  - {}
  - oAuth2ClientCredentials: []

servers:
  - url: '{apiRoot}/3gpp-slice-pp/v1'
    variables:
      apiRoot:
        default: https://example.com
        description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122.


paths:
  /pp:
    get:
      summary: Request to retrieve all the active Slice Parameters Provisionings at the NEF.
      operationId: GetSliceParamProvisionings
      tags:
        - Slice Parameters Provisionings (Collection)
      responses:
        '200':
          description: >
            OK. All the active Slice Parameters Provisioning resources managed by the 
            NEF are returned.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SlicePpData'
                minItems: 0
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '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: Request the creation of a new Slice Parameters Provisioning.
      tags:
        - Slice Parameters Provisionings (Collection)
      operationId: CreateSliceParamProvisioning
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SlicePpData'
      responses:
        '201':
          description: >
            Created. Successful creation of a new Individual Slice Parameters Provisioning
            resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SlicePpData'
          headers:
            Location:
              description: >
                Contains the URI of the newly created resource, according to the structure
                {apiRoot}/3gpp-slice-pp/v1/pp/{ppId}
              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'

  /pp/{ppId}:
    parameters:
      - name: ppId
        in: path
        description: >
          Represents the identifier of the Individual Slice Parameters Provisioning resource.
        required: true
        schema:
          type: string

    get:
      summary: Request to retrieve an existing Individual Slice Parameters Provisioning resource.
      operationId: GetIndSliceParamProvisioning
      tags:
        - Individual Slice Parameters Provisioning (Document)
      responses:
        '200':
          description: >
            OK. The requested "Individual Slice Parameters Provisioning" resource is successfully
            returned in the response body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SlicePpData'
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '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'

    put:
      summary: Request to update an existing Individual Slice Parameters Provisioning resource.
      operationId: UpdateIndSliceParamProvisioning
      tags:
        - Individual Slice Parameters Provisioning (Document)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SlicePpData'
      responses:
        '200':
          description: >
            OK. The Individual Slice Parameters Provisioning resource is successfully updated
            and a representation of the updated resource is returned in the response body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SlicePpData'
        '204':
          description: >
            No Content. The Individual Slice Parameters Provisioning resource is successfully
            updated and no content is returned in the response body.
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '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'

    patch:
      summary: Request the modification of an existing Individual Slice Parameters Provisioning resource.
      operationId: ModifyIndSliceParamProvisioning
      tags:
        - Individual Slice Parameters Provisioning (Document)
      requestBody:
        required: true
        content:
          application/merge-patch+json:
            schema:
              $ref: '#/components/schemas/SlicePpDataPatch'
      responses:
        '200':
          description: >
            OK. The Individual Slice Parameters Provisioning resource is successfully modified
            and a representation of the updated resource is returned in the response body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SlicePpData'
        '204':
          description: >
            No Content. The Individual Slice Parameters Provisioning resource is successfully
            modified and no content is returned in the response body.
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '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: Request the deletion of an existing Individual Slice Parameters Provisioning resource.
      operationId: DeleteIndSliceParamProvisioning
      tags:
        - Individual Slice Parameters Provisioning (Document)
      responses:
        '204':
          description: >
            No Content. The Individual Slice Parameters Provisioning resource is successfully
            deleted.
        '307':
          $ref: 'TS29122_CommonData.yaml#/components/responses/307'
        '308':
          $ref: 'TS29122_CommonData.yaml#/components/responses/308'
        '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:
#
# STRUCTURED DATA TYPES
#
    SlicePpData:
      description: Represents the Slice Parameters Provisioning data.
      type: object
      properties:
        afId:
          type: string
        mtcProviderId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation'
        sliceUsgCtrlData:
          type: object
          additionalProperties:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/SliceUsageControlInfo'
          minProperties: 1
          description: >
            Contains the Network Slice Usage Control information to be provisioned.
            The key of the map shall be the AF dedicated S-NSSAI (that is provided within the snssai
            attribute of the corresponding map value encoded via the SliceUsageControlInfo data
            structure) to which the Network Slice Usage Control information is related.
        suppFeat:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      required:
        - afId

    SlicePpDataPatch:
      description: >
        Represents the requested modifications to an existing Slice Parameters Provisioning
        data.
      type: object
      properties:
        sliceUsgCtrlData:
          type: object
          additionalProperties:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/SliceUsageControlInfo'
          minProperties: 1
          description: >
            Contains the Network Slice Usage Control information to be provisioned.
            The key of the map shall be the AF dedicated S-NSSAI (that is provided within the snssai
            attribute of the corresponding map value encoded via the SliceUsageControlInfo data
            structure) to which the Network Slice Usage Control information is related.


#
# SIMPLE DATA TYPES
#

#
# ENUMERATIONS
#