open5gs/lib/sbi/support/r17-20230301-openapitools-6.4.0/standard/TS29503_Nudm_EE.yaml
2023-03-01 17:50:25 +09:00

775 lines
25 KiB
YAML

openapi: 3.0.0
info:
version: '1.2.2'
title: 'Nudm_EE'
description: |
Nudm Event Exposure 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 17.9.0
url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.503/'
servers:
- url: '{apiRoot}/nudm-ee/v1'
variables:
apiRoot:
default: https://example.com
description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501.
security:
- oAuth2ClientCredentials:
- nudm-ee
- {}
paths:
/{ueIdentity}/ee-subscriptions:
post:
summary: Subscribe
operationId: CreateEeSubscription
tags:
- Create EE Subscription
parameters:
- name: ueIdentity
in: path
description: Represents the scope of the UE for which the subscription is applied. Contains the GPSI of the user or the external group ID or any UE.
required: true
schema:
type: string
pattern: '^(msisdn-[0-9]{5,15}|.+|extid-[^@]+@[^@]+|extgroupid-[^@]+@[^@]+|anyUE)$'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EeSubscription'
required: true
responses:
'201':
description: Expected response to a valid request
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedEeSubscription'
headers:
Location:
description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/nudm-ee/v1/{ueIdentity}/ee-subscriptions/{subscriptionId}'
required: true
schema:
type: string
'400':
$ref: 'TS29571_CommonData.yaml#/components/responses/400'
'403':
$ref: 'TS29571_CommonData.yaml#/components/responses/403'
'404':
$ref: 'TS29571_CommonData.yaml#/components/responses/404'
'500':
$ref: 'TS29571_CommonData.yaml#/components/responses/500'
'501':
$ref: 'TS29571_CommonData.yaml#/components/responses/501'
'503':
$ref: 'TS29571_CommonData.yaml#/components/responses/503'
default:
description: Unexpected error
callbacks:
eventOccurrenceNotification:
'{request.body#/callbackReference}':
post:
requestBody:
required: true
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/MonitoringReport'
minItems: 1
responses:
'204':
description: Successful Notification response
'400':
$ref: 'TS29571_CommonData.yaml#/components/responses/400'
'404':
$ref: 'TS29571_CommonData.yaml#/components/responses/404'
'500':
$ref: 'TS29571_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29571_CommonData.yaml#/components/responses/503'
default:
description: Unexpected error
monitoringRevocationNotification:
'{request.body#/secondCallbackRef}':
post:
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EeMonitoringRevoked'
responses:
'204':
description: Successful Notification response
'400':
$ref: 'TS29571_CommonData.yaml#/components/responses/400'
'404':
$ref: 'TS29571_CommonData.yaml#/components/responses/404'
'500':
$ref: 'TS29571_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29571_CommonData.yaml#/components/responses/503'
default:
description: Unexpected error
dataRestorationNotification:
'{request.body#/dataRestorationCallbackUri}':
post:
requestBody:
required: true
content:
application/json:
schema:
$ref: 'TS29503_Nudm_UECM.yaml#/components/schemas/DataRestorationNotification'
responses:
'204':
description: Successful Notification response
'307':
$ref: 'TS29571_CommonData.yaml#/components/responses/307'
'308':
$ref: 'TS29571_CommonData.yaml#/components/responses/308'
'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'
'409':
$ref: 'TS29571_CommonData.yaml#/components/responses/409'
'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}/ee-subscriptions/{subscriptionId}:
delete:
summary: Unsubscribe
operationId: DeleteEeSubscription
tags:
- Delete EE Subscription
parameters:
- name: ueIdentity
in: path
description: Represents the scope of the UE for which the subscription is applied. Contains the GPSI of the user or the external group ID or any UE.
required: true
schema:
type: string
pattern: '^(msisdn-[0-9]{5,15}|.+|extid-[^@]+@[^@]+|extgroupid-[^@]+@[^@]+|anyUE)$'
- name: subscriptionId
in: path
description: Id of the EE Subscription
required: true
schema:
type: string
responses:
'204':
description: Successful response
'400':
$ref: 'TS29571_CommonData.yaml#/components/responses/400'
'404':
$ref: 'TS29571_CommonData.yaml#/components/responses/404'
'500':
$ref: 'TS29571_CommonData.yaml#/components/responses/500'
'503':
$ref: 'TS29571_CommonData.yaml#/components/responses/503'
default:
description: Unexpected error
patch:
summary: Patch
operationId: UpdateEeSubscription
tags:
- Update EE Subscription
parameters:
- name: ueIdentity
in: path
description: Represents the scope of the UE for which the subscription is applied. Contains the GPSI of the user or the external group ID or any UE.
required: true
schema:
type: string
pattern: '^(msisdn-[0-9]{5,15}|.+|extid-[^@]+@[^@]+|extgroupid-[^@]+@[^@]+|anyUE)$'
- name: subscriptionId
in: path
description: Id of the EE Subscription
required: true
schema:
type: string
- name: supported-features
in: query
description: Features required to be supported by the target NF
schema:
$ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
requestBody:
content:
application/json-patch+json:
schema:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/PatchItem'
minItems: 1
required: true
responses:
'200':
description: Expected response to a valid request
content:
application/json:
schema:
$ref: 'TS29571_CommonData.yaml#/components/schemas/PatchResult'
'204':
description: Successful response
'403':
$ref: 'TS29571_CommonData.yaml#/components/responses/403'
'404':
$ref: 'TS29571_CommonData.yaml#/components/responses/404'
default:
description: Unexpected error
components:
securitySchemes:
oAuth2ClientCredentials:
type: oauth2
flows:
clientCredentials:
tokenUrl: '{nrfApiRoot}/oauth2/token'
scopes:
nudm-ee: Access to the nudm-ee API
schemas:
# COMPLEX TYPES:
CreatedEeSubscription:
type: object
required:
- eeSubscription
properties:
eeSubscription:
$ref: '#/components/schemas/EeSubscription'
numberOfUes:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Uinteger'
eventReports:
type: array
items:
$ref: '#/components/schemas/MonitoringReport'
minItems: 1
epcStatusInd:
type: boolean
failedMonitoringConfigs:
description: A map (list of key-value pairs where referenceId converted from integer to string serves as key; see clause 6.4.6.3.2) of FailedMonitoringConfiguration
type: object
additionalProperties:
$ref: '#/components/schemas/FailedMonitoringConfiguration'
minProperties: 1
failedMoniConfigsEPC:
description: A map (list of key-value pairs where referenceId converted from integer to string serves as key; see clause 6.4.6.3.2) of FailedMonitoringConfiguration, the key value "ALL" may be used to identify a map entry which contains the failed cause of the EE subscription was not successful in EPC domain.
type: object
additionalProperties:
$ref: '#/components/schemas/FailedMonitoringConfiguration'
minProperties: 1
resetIds:
type: array
items:
type: string
minItems: 1
FailedMonitoringConfiguration:
description: Contains the event type and failed cause of the failed Monitoring Configuration in the EE subscription
type: object
required:
- eventType
- failedCause
properties:
eventType:
$ref: '#/components/schemas/EventType'
failedCause:
$ref: '#/components/schemas/FailedCause'
EeSubscription:
type: object
required:
- callbackReference
- monitoringConfigurations
properties:
callbackReference:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
monitoringConfigurations:
description: A map (list of key-value pairs where ReferenceId serves as key) of MonitoringConfigurations
type: object
additionalProperties:
$ref: '#/components/schemas/MonitoringConfiguration'
minProperties: 1
reportingOptions:
$ref: '#/components/schemas/ReportingOptions'
supportedFeatures:
$ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
subscriptionId:
type: string
contextInfo:
$ref: 'TS29503_Nudm_SDM.yaml#/components/schemas/ContextInfo'
epcAppliedInd:
type: boolean
default: false
scefDiamHost:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DiameterIdentity'
scefDiamRealm:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DiameterIdentity'
notifyCorrelationId:
type: string
secondCallbackRef:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
gpsi:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'
excludeGpsiList:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'
minItems: 1
includeGpsiList:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'
minItems: 1
dataRestorationCallbackUri:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Uri'
MonitoringConfiguration:
type: object
required:
- eventType
properties:
eventType:
$ref: '#/components/schemas/EventType'
immediateFlag:
type: boolean
locationReportingConfiguration:
$ref: '#/components/schemas/LocationReportingConfiguration'
associationType:
$ref: '#/components/schemas/AssociationType'
datalinkReportCfg:
$ref: '#/components/schemas/DatalinkReportingConfiguration'
lossConnectivityCfg:
$ref: '#/components/schemas/LossConnectivityCfg'
maximumLatency:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
maximumResponseTime:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
suggestedPacketNumDl:
type: integer
minimum: 1
dnn:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
singleNssai:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
pduSessionStatusCfg:
$ref: '#/components/schemas/PduSessionStatusCfg'
reachabilityForSmsCfg:
$ref: '#/components/schemas/ReachabilityForSmsConfiguration'
mtcProviderInformation:
$ref: 'TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation'
afId:
type: string
reachabilityForDataCfg:
$ref: '#/components/schemas/ReachabilityForDataConfiguration'
idleStatusInd:
type: boolean
default: false
LossConnectivityCfg:
type: object
properties:
maxDetectionTime:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
LocationReportingConfiguration:
type: object
required:
- currentLocation
properties:
currentLocation:
type: boolean
oneTime:
type: boolean
accuracy:
$ref: '#/components/schemas/LocationAccuracy'
n3gppAccuracy:
$ref: '#/components/schemas/LocationAccuracy'
ReportingOptions:
type: object
properties:
reportMode:
$ref: '#/components/schemas/EventReportMode'
maxNumOfReports:
$ref: '#/components/schemas/MaxNumOfReports'
expiry:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
samplingRatio:
$ref: 'TS29571_CommonData.yaml#/components/schemas/SamplingRatio'
guardTime:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
reportPeriod:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
notifFlag:
$ref: 'TS29571_CommonData.yaml#/components/schemas/NotificationFlag'
MonitoringReport:
type: object
required:
- referenceId
- eventType
- timeStamp
properties:
referenceId:
$ref: '#/components/schemas/ReferenceId'
eventType:
$ref: '#/components/schemas/EventType'
report:
$ref: '#/components/schemas/Report'
reachabilityForSmsReport:
$ref: '#/components/schemas/ReachabilityForSmsReport'
gpsi:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'
timeStamp:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
reachabilityReport:
$ref: '#/components/schemas/ReachabilityReport'
Report:
oneOf:
- $ref: '#/components/schemas/ChangeOfSupiPeiAssociationReport'
- $ref: '#/components/schemas/RoamingStatusReport'
- $ref: '#/components/schemas/CnTypeChangeReport'
- $ref: '#/components/schemas/CmInfoReport'
- $ref: '#/components/schemas/LossConnectivityReport'
- $ref: '#/components/schemas/LocationReport'
- $ref: '#/components/schemas/PdnConnectivityStatReport'
ReachabilityForSmsReport:
type: object
required:
- smsfAccessType
properties:
smsfAccessType:
$ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType'
maxAvailabilityTime:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
ChangeOfSupiPeiAssociationReport:
type: object
required:
- newPei
properties:
newPei:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Pei'
RoamingStatusReport:
type: object
required:
- roaming
- newServingPlmn
properties:
roaming:
type:
boolean
newServingPlmn:
$ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnId'
accessType:
$ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType'
CnTypeChangeReport:
type: object
required:
- newCnType
properties:
newCnType:
$ref: '#/components/schemas/CnType'
oldCnType:
$ref: '#/components/schemas/CnType'
DatalinkReportingConfiguration:
type: object
properties:
dddTrafficDes:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DddTrafficDescriptor'
minItems: 1
dnn:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
slice:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Snssai'
dddStatusList:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DlDataDeliveryStatus'
minItems: 1
CmInfoReport:
type: object
properties:
oldCmInfoList:
type: array
items:
$ref: 'TS29518_Namf_EventExposure.yaml#/components/schemas/CmInfo'
minItems: 1
maxItems: 2
newCmInfoList:
type: array
items:
$ref: 'TS29518_Namf_EventExposure.yaml#/components/schemas/CmInfo'
minItems: 1
maxItems: 2
required:
- newCmInfoList
PduSessionStatusCfg:
type: object
properties:
dnn:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
ReachabilityReport:
type: object
properties:
amfInstanceId:
$ref: 'TS29571_CommonData.yaml#/components/schemas/NfInstanceId'
accessTypeList:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/AccessType'
minItems: 1
reachability:
$ref: 'TS29518_Namf_EventExposure.yaml#/components/schemas/UeReachability'
maxAvailabilityTime:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DateTime'
idleStatusIndication:
$ref: 'TS29518_Namf_EventExposure.yaml#/components/schemas/IdleStatusIndication'
ReachabilityForDataConfiguration:
type: object
required:
- reportCfg
properties:
reportCfg:
$ref: '#/components/schemas/ReachabilityForDataReportConfig'
minInterval:
$ref: 'TS29571_CommonData.yaml#/components/schemas/DurationSec'
EeMonitoringRevoked:
type: object
required:
- revokedMonitoringEventList
properties:
revokedMonitoringEventList:
description: A map (list of key-value pairs where ReferenceId serves as key) of MonitoringEvents
type: object
additionalProperties:
$ref: '#/components/schemas/MonitoringEvent'
minProperties: 1
removedGpsi:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'
excludeGpsiList:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Gpsi'
minItems: 1
MonitoringEvent:
type: object
required:
- eventType
properties:
eventType:
$ref: '#/components/schemas/EventType'
revokedCause:
$ref: '#/components/schemas/RevokedCause'
LossConnectivityReport:
type: object
required:
- lossOfConnectReason
properties:
lossOfConnectReason:
$ref: 'TS29518_Namf_EventExposure.yaml#/components/schemas/LossOfConnectivityReason'
LocationReport:
type: object
required:
- location
properties:
location:
$ref: 'TS29571_CommonData.yaml#/components/schemas/UserLocation'
PdnConnectivityStatReport:
type: object
required:
- pdnConnStat
properties:
pdnConnStat:
$ref: '#/components/schemas/PdnConnectivityStatus'
dnn:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
pduSeId:
$ref: 'TS29571_CommonData.yaml#/components/schemas/PduSessionId'
ipv4Addr:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv4Addr'
ipv6Prefixes:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Prefix'
minItems: 1
ipv6Addrs:
type: array
items:
$ref: 'TS29571_CommonData.yaml#/components/schemas/Ipv6Addr'
minItems: 1
pduSessType:
$ref: 'TS29571_CommonData.yaml#/components/schemas/PduSessionType'
# SIMPLE TYPES:
ReferenceId:
type: integer
MaxNumOfReports:
type: integer
# ENUMS:
ReachabilityForSmsConfiguration:
anyOf:
- type: string
enum:
- REACHABILITY_FOR_SMS_OVER_NAS
- REACHABILITY_FOR_SMS_OVER_IP
- type: string
EventType:
anyOf:
- type: string
enum:
- LOSS_OF_CONNECTIVITY
- UE_REACHABILITY_FOR_DATA
- UE_REACHABILITY_FOR_SMS
- LOCATION_REPORTING
- CHANGE_OF_SUPI_PEI_ASSOCIATION
- ROAMING_STATUS
- COMMUNICATION_FAILURE
- AVAILABILITY_AFTER_DDN_FAILURE
- CN_TYPE_CHANGE
- DL_DATA_DELIVERY_STATUS
- PDN_CONNECTIVITY_STATUS
- UE_CONNECTION_MANAGEMENT_STATE
- ACCESS_TYPE_REPORT
- REGISTRATION_STATE_REPORT
- CONNECTIVITY_STATE_REPORT
- TYPE_ALLOCATION_CODE_REPORT
- FREQUENT_MOBILITY_REGISTRATION_REPORT
- PDU_SES_REL
- PDU_SES_EST
- UE_MEMORY_AVAILABLE_FOR_SMS
- type: string
LocationAccuracy:
anyOf:
- type: string
enum:
- CELL_LEVEL
- RAN_NODE_LEVEL
- TA_LEVEL
- N3IWF_LEVEL
- UE_IP
- UE_PORT
- type: string
CnType:
anyOf:
- type: string
enum:
- SINGLE_4G
- SINGLE_5G
- DUAL_4G5G
- type: string
AssociationType:
anyOf:
- type: string
enum:
- IMEI_CHANGE
- IMEISV_CHANGE
- type: string
EventReportMode:
anyOf:
- type: string
enum:
- PERIODIC
- ON_EVENT_DETECTION
- type: string
ReachabilityForDataReportConfig:
anyOf:
- type: string
enum:
- DIRECT_REPORT
- INDIRECT_REPORT
- type: string
RevokedCause:
anyOf:
- type: string
enum:
- NOT_ALLOWED
- EXCLUDED_FROM_GROUP
- GPSI_REMOVED
- type: string
FailedCause:
anyOf:
- type: string
enum:
- AF_NOT_ALLOWED
- MTC_PROVIDER_NOT_ALLOWED
- MONITORING_NOT_ALLOWED
- UNSUPPORTED_MONITORING_EVENT_TYPE
- UNSUPPORTED_MONITORING_REPORT_OPTIONS
- UNSPECIFIED
- type: string
description: Indicates the Failed cause of the failed Monitoring Configuration in the EE subscription
PdnConnectivityStatus:
anyOf:
- type: string
enum:
- ESTABLISHED
- RELEASED
- type: string