MEF Service Inventory Notification (Mef Lso Interlude Service Inventory Notification)
MEF Service Inventory Notification from MEF — 4 path(s) described in OpenAPI.
MEF Service Inventory Notification from MEF — 4 path(s) described in OpenAPI.
openapi: 3.0.3
info:
title: Service Inventory Notification
description: |
**This file forms part of Mplify 135.1**
Supported use cases:
- Send Notifications
Copyright 2025 Mplify Alliance and its contributors.
This file includes content based on the TM Forum Service Inventory Management API (TMF638
v4.0.1) available at https://github.com/tmforum-apis/TMF638_ServiceInventory,
which is licensed by the TM Forum under the Apache License version 2.0. Such
content has been modified by the Mplify Alliance and its contributors.
version: 2.0.2
servers:
- url: 'https://{serverBase}/mefApi/interlude/serviceInventoryNotification/v2/'
variables:
serverBase:
description: The base of SOF's URL.
default: mplify.net
tags:
- name: Event listeners
description: Mechanism for SOF to publish *Service* notifications to BUS
paths:
/listener/serviceCreateEvent:
post:
tags:
- Event listeners
summary: Service Create Event endpoint
description:
This endpoint is used to receive notifications on Service Create Events
operationId: ServiceCreateEvent
requestBody:
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ServiceCreateEvent'
required: true
responses:
'204':
description:
'No Content (https://tools.ietf.org/html/rfc7231#section-6.3.5)'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
/listener/serviceDeleteEvent:
post:
tags:
- Event listeners
summary: Service Delete Event endpoint
description:
This endpoint is used to receive notifications on Service Delete Events
operationId: serviceDeleteEvent
requestBody:
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ServiceDeleteEvent'
required: true
responses:
'204':
description:
'No Content (https://tools.ietf.org/html/rfc7231#section-6.3.5)'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
/listener/serviceStateChangeEvent:
post:
tags:
- Event listeners
summary: Service State Change Event endpoint
description: >-
This endpoint is used to receive notifications on Service State Change
Events
operationId: serviceStateChangeEvent
requestBody:
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ServiceStateChangeEvent'
required: true
responses:
'204':
description:
'No Content (https://tools.ietf.org/html/rfc7231#section-6.3.5)'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
/listener/serviceAttributeValueChangeEvent:
post:
tags:
- Event listeners
summary: Service Attribute Value Change Event endpoint
description: >-
This endpoint is used to receive notifications on Service Attribute
Value Change Events
operationId: serviceAttributeValueChangeEvent
requestBody:
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ServiceAttributeValueChangeEvent'
required: true
responses:
'204':
description:
'No Content (https://tools.ietf.org/html/rfc7231#section-6.3.5)'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
components:
schemas:
Error:
description: >
Standard Class used to describe API response error
Not intended to be use directly. The `code` in the HTTP header is used
as a discriminator for the type of error returned in runtime.
type: object
properties:
reason:
description: >-
Text that explains the reason for error. This can be shown to a
client user.
type: string
maxLength: 255
message:
description: >-
Text that provide mode details and corrective actions related to
the error. This can be shown to a client user.
type: string
referenceError:
description: url pointing to documentation describing the error
type: string
format: uri
required:
- reason
Error400:
description:
'Bad Request. (https://tools.ietf.org/html/rfc7231#section-6.5.1)'
allOf:
- $ref: '#/components/schemas/Error'
- type: object
properties:
code:
description: >-
One of the following error codes:
- missingQueryParameter: The URI is missing a required
query-string parameter
- missingQueryValue: The URI is missing a required query-string
parameter value
- invalidQuery: The query section of the URI is invalid.
- invalidBody: The request has an invalid body
$ref: '#/components/schemas/Error400Code'
required:
- code
Error400Code:
description: >-
One of the following error codes:
- missingQueryParameter: The URI is missing a required query-string
parameter
- missingQueryValue: The URI is missing a required query-string
parameter value
- invalidQuery: The query section of the URI is invalid.
- invalidBody: The request has an invalid body
type: string
enum:
- missingQueryParameter
- missingQueryValue
- invalidQuery
- invalidBody
Error401:
description:
'Unauthorized. (https://tools.ietf.org/html/rfc7235#section-3.1)'
allOf:
- $ref: '#/components/schemas/Error'
- type: object
properties:
code:
description: >-
One of the following error codes:
- missingCredentials: No credentials provided.
- invalidCredentials: Provided credentials are invalid or
expired
$ref: '#/components/schemas/Error401Code'
required:
- code
Error401Code:
description: |-
One of the following error codes:
- missingCredentials: No credentials provided.
- invalidCredentials: Provided credentials are invalid or expired
type: string
enum:
- missingCredentials
- invalidCredentials
Error403:
description:
'Forbidden. (https://tools.ietf.org/html/rfc7231#section-6.5.3)'
allOf:
- $ref: '#/components/schemas/Error'
- type: object
properties:
code:
description: |-
This code indicates that the server understood
the request but refuses to authorize it because
of one of the following error codes:
- accessDenied: Access denied
- forbiddenRequester: Forbidden requester
- tooManyUsers: Too many users
$ref: '#/components/schemas/Error403Code'
required:
- code
Error403Code:
description: |-
This code indicates that the server understood
the request but refuses to authorize it because
of one of the following error codes:
- accessDenied: Access denied
- forbiddenRequester: Forbidden requester
- tooManyUsers: Too many users
type: string
enum:
- accessDenied
- forbiddenRequester
- tooManyUsers
Error500:
description: >-
Internal Server Error.
(https://tools.ietf.org/html/rfc7231#section-6.6.1)
allOf:
- $ref: '#/components/schemas/Error'
- type: object
properties:
code:
description: >-
One of the following error codes:
- internalError: Internal server error - the server encountered
an unexpected condition that prevented it from fulfilling the
request.
type: string
enum:
- internalError
required:
- code
Event:
description: >-
Event class is used to describe information structure used for
notification.
type: object
properties:
eventId:
description: Id of the event
type: string
eventTime:
description: Date-time when the event occurred
type: string
format: date-time
eventType:
description: The type of the notification.
type: string
event:
description: The event linked to the involved resource object
type: object
required:
- event
- eventId
- eventTime
- eventType
ServiceAttributeValueChangeEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
eventType:
description: |
Indicates the type of the event.
type: string
enum:
- serviceAttributeValueChangeEvent
event:
description: |
A reference to the object that is source of the notification.
$ref: '#/components/schemas/ServiceEventPayload'
required:
- event
- eventType
ServiceCreateEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
eventType:
description: |
Indicates the type of the event.
type: string
enum:
- serviceCreateEvent
event:
description: |
A reference to the object that is source of the notification.
$ref: '#/components/schemas/ServiceEventPayload'
required:
- event
- eventType
ServiceDeleteEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
eventType:
description: |
Indicates the type of the event.
type: string
enum:
- serviceDeleteEvent
event:
description: |
A reference to the object that is source of the notification.
$ref: '#/components/schemas/ServiceEventPayload'
required:
- event
- eventType
ServiceEventPayload:
description: The identifier of the Service being subject of this event.
type: object
properties:
id:
description: ID of the Service
type: string
href:
description: Hyperlink to access the Service
type: string
required:
- id
ServiceStateChangeEvent:
allOf:
- $ref: '#/components/schemas/Event'
- type: object
properties:
eventType:
description: |
Indicates the type of the event.
type: string
enum:
- serviceStateChangeEvent
event:
description: |
A reference to the object that is source of the notification.
$ref: '#/components/schemas/ServiceStateChangeEventPayload'
required:
- event
- eventType
ServiceStateChangeEventPayload:
description: The identifier of the Service being subject of this event.
type: object
properties:
id:
description: ID of the Service
type: string
href:
description: Hyperlink to access the Service
type: string
state:
description: The life cycle state of the service.
$ref: '#/components/schemas/ServiceStateType'
required:
- id
- state
ServiceStateType:
description: |
Valid values for the lifecycle state of the Service.
| State | Description |
| ------------------ | --------------------------------------------------------------------------------------------------------------------- |
| feasibilityChecked | Initial check whether the necessary resources are available and sufficient for the installation of a given service. |
| designed | The Service is designed. The resources are identified and/or allocated, but not reserved. |
| reserved | All required resources for given service are reserved and ready. |
| inactive | The service is deactivated and is no longer available. |
| active | The service is fully available and active |
| terminated | The service is 'logically deleted'. All associated resources are freed and made available for service to other users. |
type: string
enum:
- feasibilityChecked
- designed
- reserved
- inactive
- active
- terminated