openapi: 3.0.1
info:
title: Fault Supervision MnS
- version: 16.6.0
+ version: 16.4.0
description: >-
OAS 3.0.1 definition of the Fault Supervision MnS
© 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
All rights reserved.
externalDocs:
- description: 3GPP TS 28.532; Generic management services
+ description: 3GPP TS 28.532 V16.4.0; Generic management services
url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/
servers:
- - url: '{MnSRoot}/FaultSupervisionMnS/{MnSversion}'
+ - url: '{MnSRoot}/FaultSupervisionMnS/{version}'
variables:
MnSRoot:
description: See subclause 4.4.3 of TS 32.158
default: http://example.com/3GPPManagement
- MnSversion:
+ version:
description: Version number of the OpenAPI definition
default: XXX
paths:
in: query
required: false
schema:
- $ref: 'comDefs.yaml#/components/schemas/Dn'
+ $ref: '#/components/schemas/Dn'
- name: filter
in: query
required: false
schema:
- $ref: 'comDefs.yaml#/components/schemas/Filter'
+ $ref: '#/components/schemas/Filter'
responses:
'200':
description: >-
- type: object
properties:
lastNotificationHeader:
- $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ $ref: '#/components/schemas/NotificationHeader'
- $ref: '#/components/schemas/AlarmRecord'
- type: object
properties:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
patch:
summary: 'Clear, acknowledge or unacknowledge multiple alarms'
description: >-
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
/alarms/{alarmId}:
patch:
summary: 'Clear, acknowledge or unacknowledge a single alarm'
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
/alarms/{alarmId}/comments:
post:
summary: Add a comment to a single alarm
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
/subscriptions:
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
callbacks:
notifyNewAlarm:
'{request.body#/consumerReference}':
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyClearedAlarm:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyChangedAlarm:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyChangedAlarmGeneral:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyCorrelatedNotificationChanged:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyAckStateChanged:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyComments:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyPotentialFaultyAlarmList:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
notifyAlarmListRebuilt:
'{request.body#/consumerReference}':
post:
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
/subscriptions/{subscriptionId}:
delete:
summary: Delete a subscription
content:
application/json:
schema:
- $ref: 'comDefs.yaml#/components/schemas/ErrorResponse'
+ $ref: '#/components/schemas/ErrorResponse'
components:
schemas:
- #---- Definition of AlarmRecord ----------------------------------------------------#
+ #---- Definitions to be moved to comDefs.yaml --------------------------------------#
+
+ Long:
+ type: string
+ format: long
+ Float:
+ type: string
+ format: float
+ DateTime:
+ type: string
+ format: date-Time
+
+ Dn:
+ type: string
+ Uri:
+ type: string
+
+ AttributeNameValuePairSet:
+ type: object
+ minProperties: 1
+ AttributeValueChangeSet:
+ description: >-
+ The key in this map is the attribute name. The value of each key is an array.
+ When only one item is present in the array, it carries the new attribute
+ value. If two items are present, then the first item carries the old value
+ and the second item the new value. The items can be of any type including null.
+ type: object
+ additionalProperties:
+ type: array
+ minItems: 1
+ maxItems: 2
+ items:
+ nullable: true
+
+ Filter:
+ type: string
+ SystemDN:
+ type: string
+
+ NotificationId:
+ type: integer
+ NotificationHeader:
+ description: >-
+ Header used for all notification types
+ type: object
+ required:
+ - href
+ - notificationId
+ - notificationType
+ - eventTime
+ - systemDN
+ properties:
+ uri:
+ $ref: '#/components/schemas/Uri'
+ notificationId:
+ $ref: '#/components/schemas/NotificationId'
+ notificationType:
+ oneOf:
+ - $ref: '#/components/schemas/AlarmNotificationTypes'
+ #- $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes'
+ #- $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes'
+ # more to be added
+ eventTime:
+ $ref: '#/components/schemas/DateTime'
+ systemDN:
+ $ref: '#/components/schemas/SystemDN'
+
+ ErrorResponse:
+ description: >-
+ Default schema for the response message body in case the request is not
+ successful.
+ type: object
+ properties:
+ error:
+ type: object
+ properties:
+ errorInfo:
+ type: string
+
+ #---- End of definitions to be moved to comDefs.yaml -------------------------------#
+ #---- Definition of AlarmRecord ----------------------------------------------------#
+
AlarmId:
type: string
AlarmType:
high:
oneOf:
- type: integer
- - $ref: 'comDefs.yaml#/components/schemas/Float'
+ - $ref: '#/components/schemas/Float'
low:
- $ref: 'comDefs.yaml#/components/schemas/Float'
+ $ref: '#/components/schemas/Float'
ThresholdLevelInd:
- oneOf:
- - type: object
- properties:
- up:
- $ref: '#/components/schemas/ThresholdHysteresis'
- - type: object
- properties:
- down:
- $ref: '#/components/schemas/ThresholdHysteresis'
+ type: object
+ required:
+ - up
+ properties:
+ up:
+ $ref: '#/components/schemas/ThresholdHysteresis'
+ low:
+ $ref: '#/components/schemas/ThresholdHysteresis'
ThresholdInfo:
type: object
+ required:
+ - observedMeasurement
+ - observedValue
properties:
observedMeasurement:
type: string
observedValue:
oneOf:
- type: integer
- - $ref: 'comDefs.yaml#/components/schemas/Float'
- thresholdLevel:
+ - $ref: '#/components/schemas/Float'
+ thresholdLevelInd:
$ref: '#/components/schemas/ThresholdLevelInd'
armTime:
- $ref: 'comDefs.yaml#/components/schemas/DateTime'
- required:
- - observedMeasurement
- - observedValue
+ $ref: '#/components/schemas/DateTime'
CorrelatedNotification:
type: object
+ required:
+ - source
+ - notificationId
properties:
sourceObjectInstance:
- $ref: 'comDefs.yaml#/components/schemas/Dn'
+ $ref: '#/components/schemas/Dn'
notificationIds:
type: array
items:
- $ref: 'comDefs.yaml#/components/schemas/NotificationId'
- required:
- - sourceObjectInstance
- - notificationIds
+ $ref: '#/components/schemas/NotificationId'
CorrelatedNotifications:
type: array
items:
# alarmId:
# $ref: '#/components/schemas/AlarmId'
objectInstance:
- $ref: 'comDefs.yaml#/components/schemas/Dn'
+ $ref: '#/components/schemas/Dn'
notificationId:
- $ref: 'comDefs.yaml#/components/schemas/NotificationId'
+ $ref: '#/components/schemas/NotificationId'
alarmRaisedTime:
- $ref: 'comDefs.yaml#/components/schemas/DateTime'
+ $ref: '#/components/schemas/DateTime'
alarmChangedTime:
- $ref: 'comDefs.yaml#/components/schemas/DateTime'
+ $ref: '#/components/schemas/DateTime'
alarmClearedTime:
- $ref: 'comDefs.yaml#/components/schemas/DateTime'
+ $ref: '#/components/schemas/DateTime'
alarmType:
$ref: '#/components/schemas/AlarmType'
probableCause:
backedUpStatus:
type: boolean
backUpObject:
- $ref: 'comDefs.yaml#/components/schemas/Dn'
+ $ref: '#/components/schemas/Dn'
trendIndication:
$ref: '#/components/schemas/TrendIndication'
thresholdinfo:
correlatedNotifications:
$ref: '#/components/schemas/CorrelatedNotifications'
stateChangeDefinition:
- $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet'
+ $ref: '#/components/schemas/AttributeValueChangeSet'
monitoredAttributes:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
proposedRepairActions:
type: string
additionalText:
type: string
additionalInformation:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
rootCauseIndicator:
type: boolean
ackTime:
- $ref: 'comDefs.yaml#/components/schemas/DateTime'
+ $ref: '#/components/schemas/DateTime'
ackUserId:
type: string
ackSystemId:
type: string
#---- Definition of alarm notifications --------------------------------------------#
-
+
AlarmNotificationTypes:
type: string
enum:
NotifyNewAlarm:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
backedUpStatus:
type: boolean
backUpObject:
- $ref: 'comDefs.yaml#/components/schemas/Dn'
+ $ref: '#/components/schemas/Dn'
trendIndication:
$ref: '#/components/schemas/TrendIndication'
thresholdInfo:
correlatedNotifications:
$ref: '#/components/schemas/CorrelatedNotifications'
stateChangeDefinition:
- $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet'
+ $ref: '#/components/schemas/AttributeValueChangeSet'
monitoredAttributes:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
proposedRepairActions:
type: string
additionalText:
type: string
additionalInformation:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
rootCauseIndicator:
type: boolean
NotifyNewSecAlarm:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
- perceivedSeverity
- serviceUser
- serviceProvider
- - securityAlarmDetector
+ - securityAlarmDetector
properties:
alarmId:
$ref: '#/components/schemas/AlarmId'
additionalText:
type: string
additionalInformation:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
rootCauseIndicator:
type: boolean
serviceUser:
type: string
NotifyClearedAlarm:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
type: string
NotifyChangedAlarm:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
$ref: '#/components/schemas/PerceivedSeverity'
NotifyChangedAlarmGeneral:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
- alarmType
+ - probableCause
+ - perceivedSeverity
+ - changedAlarmAttributes
properties:
alarmId:
$ref: '#/components/schemas/AlarmId'
backedUpStatus:
type: boolean
backUpObject:
- $ref: 'comDefs.yaml#/components/schemas/Dn'
+ $ref: '#/components/schemas/Dn'
trendIndication:
$ref: '#/components/schemas/TrendIndication'
thresholdInfo:
$ref: '#/components/schemas/ThresholdInfo'
stateChangeDefinition:
- $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet'
+ $ref: '#/components/schemas/AttributeValueChangeSet'
monitoredAttributes:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
proposedRepairActions:
type: string
additionalText:
type: string
additionalInformation:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
rootCauseIndicator:
type: boolean
changedAlarmAttributes:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
NotifyChangedSecAlarmGeneral:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
- alarmType
+ - probableCause
+ - perceivedSeverity
- serviceUser
- serviceProvider
- securityAlarmDetector
+ - changedAlarmAttributes
properties:
alarmId:
$ref: '#/components/schemas/AlarmId'
additionalText:
type: string
additionalInformation:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
rootCauseIndicator:
type: boolean
serviceUser:
securityAlarmDetector:
type: string
changedAlarmAttributes:
- $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet'
+ $ref: '#/components/schemas/AttributeNameValuePairSet'
NotifyCorrelatedNotificationChanged:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
type: boolean
NotifyAckStateChanged:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
type: string
NotifyComments:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- alarmId
$ref: '#/components/schemas/Comments'
NotifyPotentialFaultyAlarmList:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- reason
type: string
NotifyAlarmListRebuilt:
allOf:
- - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader'
+ - $ref: '#/components/schemas/NotificationHeader'
- type: object
required:
- reason
$ref: '#/components/schemas/AlarmListAlignmentRequirement'
#---- Definition of query parameters -----------------------------------------------#
-
+
AlarmAckState:
type: string
enum:
type: object
properties:
commentTime:
- $ref: 'comDefs.yaml#/components/schemas/DateTime'
+ $ref: '#/components/schemas/DateTime'
commentUserId:
type: string
commentSystemId:
type: object
properties:
consumerReference:
- $ref: 'comDefs.yaml#/components/schemas/Uri'
+ $ref: '#/components/schemas/Uri'
timeTick:
- type: integer
+ $ref: '#/components/schemas/Long'
filter:
- $ref: 'comDefs.yaml#/components/schemas/Filter'
+ $ref: '#/components/schemas/Filter'