Oracle® Communications Network Slice Selection Function (NSSF) Cloud Native User's Guide Release 1.0 F16990-01 |
|
![]() Previous |
This appendix provides a sample of Open API specification in NSSF.
Open API 3.0
openapi: 3.0.0 info: title: "NSSF-CONFIGURATION" version: v0.1 servers: - url: 'https://{apiRoot}/' variables: apiRoot: default: nssf description: >- apiRoot should be mentioned as defined in NSSF configuration script paths: '/nssf-configuration/v1/nsiprofiles': post: summary: "Create a network slice instance profile" tags: - "Create a network slice instance profile" requestBody: content: application/json: # Media type schema: # Request body contents $ref: '#/components/schemas/NssfNsiProfile' responses: '201' : description: Created '403' : description: Forbidden '409' : description: Conflict '500' : description: Internal Server Error '503' : description: Service Unavailable default: description: Unexpected error get: summary: "Read all network slice instance profiles" tags: - "Read all network slice instance profiles" responses: '200' : description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/NssfNsiProfile' '403' : description: Forbidden '500' : description: Internal Server Error '503' : description: Service Unavailable default: description: Unexpected error '/nssf-configurations/v1/nsiprofiles/{name}': get: summary: "Read a network slice instance profile" tags: - "Read a network slice instance profile" parameters: - name: name in: path description: "network slice instance profile name" required: true schema: type: string responses: '200' : description: OK content: application/json: schema: $ref: '#/components/schemas/NssfNsiProfile' '400' : description: Bad Request '403' : description: Forbidden '404' : description: Not Found '405' : description: Method Not Allowed '409' : description: Conflict '500' : description: Internal Server Error '502' : description: Bad Gateway '503' : description: Service Unavailable default: description: Unexpected error delete: summary: "Delete a network slice instance profile" tags: - "Delete a network slice instance profile" parameters: - name: name in: path description: "network slice instance profile name" required: true schema: type: string responses: '204' : description: No Content '403' : description: Forbidden '404' : description: No Found '500' : description: Internal Server Error '503' : description: Service Unavailable default: description: Unexpected error '/nssf-configuration/v1/nssrules': post: summary: "Create a network slice selection rule" tags: - "Create a network slice selection rule" requestBody: content: application/json: # Media type schema: # Request body contents $ref: '#/components/schemas/NssfNssRule' responses: '201' : description: Created '403' : description: Forbidden '409' : description: Conflict '500' : description: Internal Server Error '503' : description: Service Unavailable default: description: Unexpected error get: summary: "Read all network slice selection rules" tags: - "Read all network slice selection rules" responses: '200' : description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/NssfNssRule' '403' : description: Forbidden '500' : description: Internal Server Error '503' : description: Service Unavailable default: description: Unexpected error '/nssf-configuration/v1/nssrule/{name}': get: summary: "Read a network slice selection rule" tags: - "Read a network slice selection rule" parameters: - name: name in: path description: "network slice selection rule name" required: true schema: type: string responses: '200' : description: OK content: application/json: schema: $ref: '#/components/schemas/NssfNssRule' '400' : description: Bad Request '403' : description: Forbidden '404' : description: Not Found '405' : description: Method Not Allowed '409' : description: Conflict '500' : description: Internal Server Error '502' : description: Bad Gateway '503' : description: Service Unavailable default: description: Unexpected error delete: summary: "Delete a network slice selection rule" tags: - "Delete a network slice selection rule" parameters: - name: name in: path description: "network slice selection rule name" required: true schema: type: string responses: '204' : description: No Content '403' : description: Forbidden '404' : description: No Found '500' : description: Internal Server Error '503' : description: Service Unavailable default: description: Unexpected error components: schemas: NssfNsiProfile: type: object properties: name: type: string description: "Network Slice Instance Profile Name" minLength: 1 maxLength: 255 example: "Slice01" nrfUri: type: string description: "URI of the Network Resource Function" minLength: 1 maxLength: 255 example: nrf.oracle.com nsiId: type: string description: "Network Slice Intance Identifier" minLength: 1 maxLength: 255 targetAmfSets: type: array description: "List of Target AMF Sets mapped to this Network Slice Instance" items: $ref: '#/components/schemas/NssfTargetAmfSet' minItems: 1 required: - name - nrfUri - targetAmfSets NssfTargetAmfSet: type: object properties: regionId: type: string description: "Target AMF Region Id" minLength: 1 maxLength: 2 example: "01" setId: type: string description: "Target AMF Set Id" minLength: 1 maxLength: 3 example: "001" setFqdn: type: string description: "Target AMF Set Fqdn" pattern: "^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.){2,}([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\\-]*[A-Za-z0-9]){2,}$" example: "set001.region01.amfset.5gc.mnc311.mcc282.3gppnetwork.org" required: - regionId - setId NssfNssRule: type: object properties: name: type: string description: "Network Slice Selection Rule Name" minLength: 1 maxLength: 255 example: "NSS-Rule01" amfId: type: string description: "AMF Identifier" minLength: 1 maxLength: 255 plmnId: $ref: '#/components/schemas/PlmnId' tac: type: string description: "AMF Identifier" minLength: 1 maxLength: 255 snssai: $ref: '#/components/schemas/Snssai' salience: type: integer description: "Order of importance, higher salience, more important" minimum: 0 maximum: 65535 behavior: $ref: '#/components/schemas/NssfNssRuleBehavior' required: - name - nrfUri - snssai - behavior PlmnId: type: object properties: mcc: type: string description: "Mobile Country Code" minLength: 1 maxLength: 3 mnc: type: string description: "Mobile Network Code" minLength: 1 maxLength: 3 required: - mcc - mnc Snssai: type: object properties: sst: type: integer minimum: 0 maximum: 255 sd: type: string pattern: '^[A-Fa-f0-9]{6}$' required: - sst NssfNssRuleBehavior: type: object properties: grant: type: string enum: - ALLOWED - RESTRICTED description: "Whether the requested S-NSSAI is allowed or restricted" accessType: type: string enum: - 3GPP_ACCESS - NON_3GPP_ACCESS description: "Access Type in which the grant applies" nsiProfiles: type: array items: properties: name: type: string description: "Network Slice Instance profile name" salience: type: integer description: "Order of importance, higher salience, more important" required: - name required: - grant - accessType
This is the start of your topic.