openapi: 3.0.0 info: version: '2.0.1' title: 'NSSF NS Selection' description: | NSSF Network Slice Selection Service. © 2019, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. security: - {} - oAuth2ClientCredentials: - nnssf-nsselection servers: - url: '{apiRoot}/nnssf-nsselection/v2' variables: apiRoot: default: https://example.com description: apiRoot as defined in subclause 4.4 of 3GPP TS 29.501 externalDocs: description: 3GPP TS 29.531 V15.3.0; 5G System; Network Slice Selection Services; Stage 3 url: http://www.3gpp.org/ftp/Specs/archive/29_series/29.531/ paths: /network-slice-information: get: summary: Retrieve the Network Slice Selection Information tags: - Network Slice Information (Document) operationId: NSSelectionGet parameters: - name: nf-type in: query description: NF type of the NF service consumer required: true schema: $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/NFType' - name: nf-id in: query description: NF Instance ID of the NF service consumer required: true schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' - name: slice-info-request-for-registration in: query description: Requested network slice information during Registration procedure content: application/json: schema: $ref: '#/components/schemas/SliceInfoForRegistration' - name: slice-info-request-for-pdu-session in: query description: Requested network slice information during PDU session establishment procedure content: application/json: schema: $ref: '#/components/schemas/SliceInfoForPDUSession' - name: slice-info-request-for-ue-cu in: query description: Requested network slice information during UE confuguration update procedure content: application/json: schema: $ref: '#/components/schemas/SliceInfoForUEConfigurationUpdate' - name: home-plmn-id in: query description: PLMN ID of the HPLMN content: application/json: schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId' - name: tai in: query description: TAI of the UE content: application/json: schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/Tai' - name: supported-features in: query description: Features required to be supported by the NFs in the target slice instance schema: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' responses: '200': description: OK (Successful Network Slice Selection) content: application/json: schema: $ref: '#/components/schemas/AuthorizedNetworkSliceInfo' '400': $ref: 'TS29571_CommonData.yaml#/components/responses/400' '401': $ref: 'TS29571_CommonData.yaml#/components/responses/401' '403': $ref: 'TS29571_CommonData.yaml#/components/responses/403' '404': $ref: 'TS29571_CommonData.yaml#/components/responses/404' '406': $ref: 'TS29571_CommonData.yaml#/components/responses/406' '414': $ref: 'TS29571_CommonData.yaml#/components/responses/414' '429': $ref: 'TS29571_CommonData.yaml#/components/responses/429' '500': $ref: 'TS29571_CommonData.yaml#/components/responses/500' '503': $ref: 'TS29571_CommonData.yaml#/components/responses/503' default: description: Unexpected error components: securitySchemes: oAuth2ClientCredentials: type: oauth2 flows: clientCredentials: tokenUrl: '{nrfApiRoot}/oauth2/token' scopes: nnssf-nsselection: Access to the Nnssf_NSSelection API schemas: AuthorizedNetworkSliceInfo: type: object properties: allowedNssaiList: type: array items: $ref: '#/components/schemas/AllowedNssai' minItems: 1 configuredNssai: type: array items: $ref: '#/components/schemas/ConfiguredSnssai' minItems: 1 targetAmfSet: type: string pattern: '^[0-9]{3}-[0-9]{2-3}-[A-Fa-f0-9]{2}-[0-3][A-Fa-f0-9]{2}$' candidateAmfList: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId' minItems: 1 rejectedNssaiInPlmn: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' minItems: 1 rejectedNssaiInTa: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' minItems: 1 nsiInformation: $ref: '#/components/schemas/NsiInformation' supportedFeatures: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' nrfAmfSet: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' nrfAmfSetNfMgtUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' nrfAmfSetAccessTokenUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' SubscribedSnssai: type: object required: - subscribedSnssai properties: subscribedSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' defaultIndication: type: boolean AllowedSnssai: type: object required: - allowedSnssai properties: allowedSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' nsiInformationList: type: array items: $ref: '#/components/schemas/NsiInformation' minItems: 1 mappedHomeSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' AllowedNssai: type: object required: - allowedSnssaiList - accessType properties: allowedSnssaiList: type: array items: $ref: '#/components/schemas/AllowedSnssai' minItems: 1 accessType: $ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType' NsiInformation: type: object required: - nrfId properties: nrfId: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' nsiId: $ref: '#/components/schemas/NsiId' nrfNfMgtUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' nrfAccessTokenUri: $ref: 'TS29571_CommonData.yaml#/components/schemas/Uri' MappingOfSnssai: type: object required: - servingSnssai - homeSnssai properties: servingSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' homeSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' SliceInfoForRegistration: type: object properties: subscribedNssai: type: array items: $ref: '#/components/schemas/SubscribedSnssai' minItems: 1 allowedNssaiCurrentAccess: $ref: '#/components/schemas/AllowedNssai' allowedNssaiOtherAccess: $ref: '#/components/schemas/AllowedNssai' sNssaiForMapping: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' minItems: 1 requestedNssai: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' minItems: 1 defaultConfiguredSnssaiInd: type: boolean mappingOfNssai: type: array items: $ref: '#/components/schemas/MappingOfSnssai' minItems: 1 requestMapping: type: boolean SliceInfoForPDUSession: type: object required: - sNssai - roamingIndication properties: sNssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' roamingIndication: $ref: '#/components/schemas/RoamingIndication' homeSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' SliceInfoForUEConfigurationUpdate: type: object properties: subscribedNssai: type: array items: $ref: '#/components/schemas/SubscribedSnssai' minItems: 1 allowedNssaiCurrentAccess: $ref: '#/components/schemas/AllowedNssai' allowedNssaiOtherAccess: $ref: '#/components/schemas/AllowedNssai' defaultConfiguredSnssaiInd: type: boolean requestedNssai: type: array items: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' minItems: 1 mappingOfNssai: type: array items: $ref: '#/components/schemas/MappingOfSnssai' minItems: 1 ConfiguredSnssai: type: object required: - configuredSnssai properties: configuredSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' mappedHomeSnssai: $ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai' RoamingIndication: anyOf: - type: string enum: - NON_ROAMING - LOCAL_BREAKOUT - HOME_ROUTED_ROAMING - type: string NsiId: type: string