A.9 Nudm_SSAU API

29.5033GPP5G SystemRelease 18Stage 3TSUnified Data Management Services

openapi: 3.0.0

info:

version: ‘1.1.0-alpha.1’

title: ‘Nudm_SSAU’

description: |

Nudm Service Specific Authorization Service.

© 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).

All rights reserved.

externalDocs:

description: 3GPP TS 29.503 Unified Data Management Services, version 18.0.0

url: ‘https://www.3gpp.org/ftp/Specs/archive/29_series/29.503/’

servers:

– url: ‘{apiRoot}/nudm-ssau/v1’

variables:

apiRoot:

default: https://example.com

description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501.

security:

– oAuth2ClientCredentials:

– nudm-ssau

– {}

paths:

/{ueIdentity}/{serviceType}/authorize:

post:

summary: Authorization for the Service specific parameters in the request.

operationId: ServiceSpecificAuthorization

tags:

– Service specific authorization request

parameters:

– name: ueIdentity

in: path

description: Represents the scope of the UE for which the Service Specific Parameters are authorized. Contains the GPSI of the user or the external group ID.

required: true

schema:

type: string

pattern: ‘^(msisdn-[0-9]{5,15}|.+|extid-[^@]+@[^@]+|extgroupid-[^@]+@[^@]+)$’

– name: serviceType

in: path

description: Represents the specific service for which the Service Specific Parameters are authorized.

required: true

schema:

$ref: ‘#/components/schemas/ServiceType’

requestBody:

content:

application/json:

schema:

$ref: ‘#/components/schemas/ServiceSpecificAuthorizationInfo’

required: true

responses:

‘200’:

description: Expected response to a valid request

content:

application/json:

schema:

$ref: ‘#/components/schemas/ServiceSpecificAuthorizationData’

‘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’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘501’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/501’

‘502’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/502’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

description: Unexpected error

callbacks:

authUpdateNotification:

‘{request.body#/authUpdateCallbackUri}’:

post:

requestBody:

required: true

content:

application/json:

schema:

$ref: ‘#/components/schemas/AuthUpdateNotification’

responses:

‘204’:

description: Expected response to a valid request

‘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’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘502’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/502’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

description: Unexpected error

/{ueIdentity}/{serviceType}/remove:

post:

summary: Remove the authorization of specific service’s configuration.

operationId: ServiceSpecificAuthorizationRemoval

tags:

– Service specific authorization remove

parameters:

– name: ueIdentity

in: path

description: Represents the scope of the UE for which the Service Specific configuration authorization to be removed. Contains the GPSI of the user or the external group ID.

required: true

schema:

type: string

pattern: ‘^(msisdn-[0-9]{5,15}|.+|extid-[^@]+@[^@]+|extgroupid-[^@]+@[^@]+)$’

– name: serviceType

in: path

description: Represents the specific service for which the Service Specific configuration authorization to be removed.

required: true

schema:

$ref: ‘#/components/schemas/ServiceType’

requestBody:

content:

application/json:

schema:

$ref: ‘#/components/schemas/ServiceSpecificAuthorizationRemoveData’

required: true

responses:

‘204’:

description: Successful response

‘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’

‘411’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/411’

‘413’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/413’

‘415’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/415’

‘429’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/429’

‘500’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/500’

‘501’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/501’

‘502’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/502’

‘503’:

$ref: ‘TS29571_CommonData.yaml#/components/responses/503’

default:

description: Unexpected error

components:

securitySchemes:

oAuth2ClientCredentials:

type: oauth2

flows:

clientCredentials:

tokenUrl: ‘{nrfApiRoot}/oauth2/token’

scopes:

nudm-ssau: Access to the nudm-ssau API

schemas:

# COMPLEX TYPES:

#

AuthUpdateNotification:

description: Represents an authorization update notification.

type: object

required:

– serviceType

– authUpdateInfoList

properties:

serviceType:

$ref: ‘#/components/schemas/ServiceType’

snssai:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Snssai’

dnn:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Dnn’

authUpdateInfoList:

type: array

items:

$ref: ‘#/components/schemas/AuthUpdateInfo’

minItems: 1

mtcProviderInformation:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation’

afId:

type: string

AuthUpdateInfo:

description: Represents authorization update information.

type: object

required:

– authorizationData

properties:

authorizationData:

$ref: ‘#/components/schemas/ServiceSpecificAuthorizationData’

invalidityInd:

type: boolean

invalidCause:

$ref: ‘#/components/schemas/InvalidCause’

ServiceSpecificAuthorizationInfo:

description: Authorization information for a specific service

type: object

properties:

snssai:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Snssai’

dnn:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Dnn’

mtcProviderInformation:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation’

authUpdateCallbackUri:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uri’

afId:

type: string

nefId:

$ref: ‘TS29510_Nnrf_NFManagement.yaml#/components/schemas/NefId’

ServiceSpecificAuthorizationData:

description: Authorization Response for a specific service.

type: object

properties:

authorizationUeId:

$ref: ‘#/components/schemas/AuthorizationUeId’

extGroupId:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/ExternalGroupId’

intGroupId:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/GroupId’

authId:

type: string

AuthorizationUeId:

description: UE Id of the Authorization Data.

type: object

required:

– supi

properties:

supi:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Supi’

gpsi:

$ref: ‘TS29571_CommonData.yaml#/components/schemas/Gpsi’

ServiceSpecificAuthorizationRemoveData:

description: Information for Authorization removal of a specific service.

type: object

required:

– authId

properties:

authId:

type: string

# SIMPLE TYPES:

# ENUMS:

ServiceType:

anyOf:

– type: string

enum:

– AF_GUIDANCE_FOR_URSP

– type: string

description: >

This string provides forward-compatibility with future

extensions to the enumeration but is not used to encode

content defined in the present version of this API.

description: >

Possible values are

– AF_GUIDANCE_FOR_URSP

InvalidCause:

anyOf:

– type: string

enum:

– SUBSRIPTION_WITHDRAWAL

– DNN_REMOVED

– SLICE_REMOVED

– AUTHORIZATION_REVOKED

– type: string

description: >

This string provides forward-compatibility with future

extensions to the enumeration but is not used to encode

content defined in the present version of this API.

description: >

Possible values are

– SUBSRIPTION_WITHDRAWAL

– DNN_REMOVED

– SLICE_REMOVED

– AUTHORIZATION_REVOKED