Virtualized Network Function Fault Management Interface (VNF FM) v1

Virtualized Network Function Fault Management Interface (VNF FM)

This interface manages the VNF fault management operations of VNF instances.

This interface allows the NFVO to invoke VNF fault management operations of VNF instances towards the VNFM. The detail of this interface is described in SOL002 v3.3.1 clause 7. The parameters of some specific standards need reference SOL013 v3.4.1 clause 5.

GET
/vnffm/v1/alarms

Get all alarms (v1)

The GET method gets all alarms, Allow users to filter out alarms based on query parameter in the request.

If the API consumer intends to query all alarms, it sends a GET request to the “Alarms” resource.The VNFM returns a “200 OK” response to the API consumer, and includes zero or more data structures of type “Alarm” in the payload body.

An attribute selector allows the API consumer to choose which attributes it wants to be contained in the response. all_fields, fields, exclude_fields and exclude_default can be set as query parameters.

Attribute-based filtering expression. The following attribute names shall be supported by the Tacker in the attribute-based filtering expression: id, managedObjectId, rootCauseFaultyResource/faultyResourceType, eventType, perceivedSeverity, probableCause.

Response Codes

Success

Code

Reason

200 - OK

Request was successful.

Error

Code

Reason

400 - Bad Request

Some content in the request was invalid.

401 - Unauthorized

User must authenticate before making a request.

406 - Not Acceptable

Not Acceptable, the requested resource is only capable of generating content not acceptable according to the ‘Accept’ headers sent in the request.

Response Parameters

Name

In

Type

Description

id

body

string

Identifier of this Alarm information element.

managedObjectId

body

string

Identifier of the affected VNF instance.

vnfcInstanceIds (Optional)

body

array

Identifiers of the affected VNFC instances.

rootCauseFaultyResource (Optional)

body

object

The virtualised resources that are causing the VNF fault. Shall be present if the alarm affects virtualised resources.

faultyResource

body

object

Information that identifies the faulty resource instance and its managing entity.

vimConnectionId (Optional)

body

string

Identifier of the VIM connection to manage the resource. This attribute shall only be supported and present if VNFrelated resource management in direct mode is applicable. The applicable “VimConnectionInfo” structure, which is referenced by vimConnectionId, can be obtained from the “vimConnectionInfo” attribute of the “VnfInstance” structure.

resourceProviderId (Optional)

body

string

Identifier of the entity responsible for the management of the resource. This attribute shall only be supported and present when VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document.

resourceId

body

string

Identifier of the resource in the scope of the VIM or the resource provider.

vimLevelResourceType (Optional)

body

string

Identifier of the resource in the scope of the VIM or the resource provider.

faultyResourceType

body

object

Type of the faulty resource. COMPUTE: Virtual compute resource, STORAGE: Virtual storage resource, NETWORK: Virtual network resource.

alarmRaisedTime

body

string

Time stamp indicating when the alarm is raised by the managed object.

alarmChangedTime (Optional)

body

string

Time stamp indicating when the alarm was last changed. It shall be present if the alarm has been updated.

alarmClearedTime (Optional)

body

string

Time stamp indicating when the alarm was cleared. It shall be present if the alarm has been cleared.

alarmAcknowledgedTime (Optional)

body

string

Time stamp indicating when the alarm was acknowledged. It shall be present if the alarm has been acknowledged.

ackState

body

string

Acknowledgement state of the alarm. Permitted values: UNACKNOWLEDGED, ACKNOWLEDGED.

perceivedSeverity

body

object

Perceived severity of the managed object failure. CRITICAL,MAJOR,MINOR, WARNING,INDETERMINATE,CLEARED.

eventTime

body

string

Time stamp indicating when the fault was observed.

eventType

body

object

Type of event.

faultType (Optional)

body

string

Additional information to clarify the type of the fault.

probableCause

body

string

Information about the probable cause of the fault.

isRootCause

body

bool

Attribute indicating if this fault is the root of other correlated alarms. If true, then the alarms listed in the attribute “correlatedAlarmIds” are caused by this fault.

correlatedAlarmIds (Optional)

body

string

List of identifiers of other alarms correlated to this fault.

faultDetails (Optional)

body

string

Provides additional information about the fault.

_links

body

array

Links for this resource.

self

body

object

URI of this resource.

objectInstance (Optional)

body

object

Link to the resource representing the VNF instance to which the notified alarm is correlated. Shall be present if the VNF instance information is accessible as a resource.

Response Example

[
  {
    "id": "78a39661-60a8-4824-b989-88c1b0c3534a",
    "managedObjectId": "c61314d0-f583-4ab3-a457-46426bce02d3",
    "rootCauseFaultyResource": {
        "faultyResource": {
            "vimConnectionId": "0d57e928-86a4-4445-a4bd-1634edae73f3",
            "resourceId": "4e6ccbe1-38ec-4b1b-a278-64de09ba01b3",
            "vimLevelResourceType": "OS::Nova::Server"
        },
        "faultyResourceType": "COMPUTE"
    },
    "alarmRaisedTime": "2021-09-06T10:21:03Z",
    "alarmChangedTime": "2021-09-06T10:21:03Z",
    "alarmClearedTime": "2021-09-06T10:21:03Z",
    "alarmAcknowledgedTime": "2021-09-06T10:21:03Z",
    "ackState": "UNACKNOWLEDGED",
    "perceivedSeverity": "WARNING",
    "eventTime": "2021-09-06T10:21:03Z",
    "eventType": "EQUIPMENT_ALARM",
    "faultType": "Fault Type",
    "probableCause": "The server cannot be connected.",
    "isRootCause": false,
    "correlatedAlarmIds": [
        "c88b624e-e997-4b17-b674-10ca2bab62e0",
        "c16d41fd-12e2-49a6-bb17-72faf702353f"
    ],
    "faultDetails": [
        "Fault",
        "Details"
    ],
    "_links": {
        "self": {
            "href": "/vnffm/v1/alarms/78a39661-60a8-4824-b989-88c1b0c3534a"
        },
        "objectInstance": {
            "href": "/vnflcm/v1/vnf_instances/0e5f3086-4e79-47ed-a694-54c29155fa26"
        }
    }
  }
]
GET
/vnffm/v1/alarms/{alarmId}

Get the individual alarm (v1)

The GET method gets the alarm specified in the Tacker.

If the API consumer intends to read a particular alarm, it sends a GET request to the “Individual alarm” resource, addressed by the appropriate alarm identifier in its resource URI. In case of failure, appropriate error information is provided in the response.

Response Codes

Success

Code

Reason

200 - OK

Request was successful.

Error

Code

Reason

400 - Bad Request

Some content in the request was invalid.

401 - Unauthorized

User must authenticate before making a request.

404 - Not Found

The requested resource could not be found.

406 - Not Acceptable

Not Acceptable, the requested resource is only capable of generating content not acceptable according to the ‘Accept’ headers sent in the request.

Request Parameters

Name

In

Type

Description

alarmId

path

string

Identifier of this Alarm information element.

Response Parameters

Name

In

Type

Description

id

body

string

Identifier of this Alarm information element.

managedObjectId

body

string

Identifier of the affected VNF instance.

vnfcInstanceIds (Optional)

body

array

Identifiers of the affected VNFC instances.

rootCauseFaultyResource (Optional)

body

object

The virtualised resources that are causing the VNF fault. Shall be present if the alarm affects virtualised resources.

faultyResource

body

object

Information that identifies the faulty resource instance and its managing entity.

vimConnectionId (Optional)

body

string

Identifier of the VIM connection to manage the resource. This attribute shall only be supported and present if VNFrelated resource management in direct mode is applicable. The applicable “VimConnectionInfo” structure, which is referenced by vimConnectionId, can be obtained from the “vimConnectionInfo” attribute of the “VnfInstance” structure.

resourceProviderId (Optional)

body

string

Identifier of the entity responsible for the management of the resource. This attribute shall only be supported and present when VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document.

resourceId

body

string

Identifier of the resource in the scope of the VIM or the resource provider.

vimLevelResourceType (Optional)

body

string

Identifier of the resource in the scope of the VIM or the resource provider.

faultyResourceType

body

object

Type of the faulty resource. COMPUTE: Virtual compute resource, STORAGE: Virtual storage resource, NETWORK: Virtual network resource.

alarmRaisedTime

body

string

Time stamp indicating when the alarm is raised by the managed object.

alarmChangedTime (Optional)

body

string

Time stamp indicating when the alarm was last changed. It shall be present if the alarm has been updated.

alarmClearedTime (Optional)

body

string

Time stamp indicating when the alarm was cleared. It shall be present if the alarm has been cleared.

alarmAcknowledgedTime (Optional)

body

string

Time stamp indicating when the alarm was acknowledged. It shall be present if the alarm has been acknowledged.

ackState

body

string

Acknowledgement state of the alarm. Permitted values: UNACKNOWLEDGED, ACKNOWLEDGED.

perceivedSeverity

body

object

Perceived severity of the managed object failure. CRITICAL,MAJOR,MINOR, WARNING,INDETERMINATE,CLEARED.

eventTime

body

string

Time stamp indicating when the fault was observed.

eventType

body

object

Type of event.

faultType (Optional)

body

string

Additional information to clarify the type of the fault.

probableCause

body

string

Information about the probable cause of the fault.

isRootCause

body

bool

Attribute indicating if this fault is the root of other correlated alarms. If true, then the alarms listed in the attribute “correlatedAlarmIds” are caused by this fault.

correlatedAlarmIds (Optional)

body

string

List of identifiers of other alarms correlated to this fault.

faultDetails (Optional)

body

string

Provides additional information about the fault.

_links

body

array

Links for this resource.

self

body

object

URI of this resource.

objectInstance (Optional)

body

object

Link to the resource representing the VNF instance to which the notified alarm is correlated. Shall be present if the VNF instance information is accessible as a resource.

Response Example

{
    "id": "78a39661-60a8-4824-b989-88c1b0c3534a",
    "managedObjectId": "c61314d0-f583-4ab3-a457-46426bce02d3",
    "rootCauseFaultyResource": {
        "faultyResource": {
            "vimConnectionId": "0d57e928-86a4-4445-a4bd-1634edae73f3",
            "resourceId": "4e6ccbe1-38ec-4b1b-a278-64de09ba01b3",
            "vimLevelResourceType": "OS::Nova::Server"
        },
        "faultyResourceType": "COMPUTE"
    },
    "alarmRaisedTime": "2021-09-06T10:21:03Z",
    "alarmChangedTime": "2021-09-06T10:21:03Z",
    "alarmClearedTime": "2021-09-06T10:21:03Z",
    "alarmAcknowledgedTime": "2021-09-06T10:21:03Z",
    "ackState": "UNACKNOWLEDGED",
    "perceivedSeverity": "WARNING",
    "eventTime": "2021-09-06T10:21:03Z",
    "eventType": "EQUIPMENT_ALARM",
    "faultType": "Fault Type",
    "probableCause": "The server cannot be connected.",
    "isRootCause": false,
    "correlatedAlarmIds": [
        "c88b624e-e997-4b17-b674-10ca2bab62e0",
        "c16d41fd-12e2-49a6-bb17-72faf702353f"
    ],
    "faultDetails": [
        "Fault",
        "Details"
    ],
    "_links": {
        "self": {
            "href": "/vnffm/v1/alarms/78a39661-60a8-4824-b989-88c1b0c3534a"
        },
        "objectInstance": {
            "href": "/vnflcm/v1/vnf_instances/0e5f3086-4e79-47ed-a694-54c29155fa26"
        }
    }
  }
PATCH
/vnffm/v1/alarms/{alarmId}

Modify the confirmation status (v1)

The PATCH method modifies the confirmation status of the alarm specified in the Tacker.

The API consumer sends a PATCH request to the individual alarm. The VNFM returns a “200 OK” response to the API consumer, and includes a data structure of type “AlarmModifications” in the payload body. In case of failure, appropriate error information is provided in the response.

Response Codes

Success

Code

Reason

200 - OK

Request was successful.

Error

Code

Reason

400 - Bad Request

Some content in the request was invalid.

401 - Unauthorized

User must authenticate before making a request.

404 - Not Found

The requested resource could not be found.

406 - Not Acceptable

Not Acceptable, the requested resource is only capable of generating content not acceptable according to the ‘Accept’ headers sent in the request.

409 - Conflict

This operation conflicted with another operation on this resource.

Request Parameters

Name

In

Type

Description

alarmId

path

string

Identifier of this Alarm information element.

ackState

body

string

Acknowledgement state of the alarm. Permitted values: UNACKNOWLEDGED, ACKNOWLEDGED.

Request Example

{
  "ackState": "ACKNOWLEDGED"
}

Response Parameters

Name

In

Type

Description

ackState

body

string

Acknowledgement state of the alarm. Permitted values: UNACKNOWLEDGED, ACKNOWLEDGED.

Response Example

{
  "ackState": "ACKNOWLEDGED"
}
POST
/vnffm/v1/subscriptions

Create a subscription (v1)

The POST method creates a new VNF FM-Subscription.

As the result of successfully executing this method, a new VNF FM-Subscription shall have been created, and return detailed FM subscription data. In case of failure, including an invalid notification endpoint, appropriate error information is provided in the response.

Response Codes

Success

Code

Reason

201 - Created

Resource was created and is ready to use.

Error

Code

Reason

400 - Bad Request

Some content in the request was invalid.

401 - Unauthorized

User must authenticate before making a request.

406 - Not Acceptable

Not Acceptable, the requested resource is only capable of generating content not acceptable according to the ‘Accept’ headers sent in the request.

422 - Unprocessable Entity

The content type of the payload body is supported and the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data cannot be processed (e.g. because it fails validation against a schema).

Request Parameters

Name

In

Type

Description

filter (Optional)

body

object

Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter.

vnfInstanceSubscriptionFilter (Optional)

body

object

Filter criteria to select VNF instances about which to notify.

vnfdIds (Optional)

body

array

If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute.

vnfProductsFromProviders (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProvider

body

string

If present, match VNF instances that belong to VNF products from certain providers.

vnfProducts (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProductName

body

string

Name of the VNF product to match.

versions (Optional)

body

array

If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.

vnfSoftwareVersion

body

object

Software version to match.

vnfdVersions (Optional)

body

array

Software version to match.

vnfInstanceIds (Optional)

body

array

If present, match VNF instances with an instance identifier listed in this attribute.

vnfInstanceNames (Optional)

body

array

If present, match VNF instances with a VNF Instance Name listed in this attribute.

notificationTypes (Optional)

body

array

Match particular notification types. Permitted values: AlarmNotification, AlarmClearedNotification, AlarmListRebuiltNotification.

faultyResourceTypes (Optional)

body

array

Match VNF alarms with a faulty resource type. COMPUTE, STORAGE, NETWORK.

perceivedSeverities (Optional)

body

array

Match VNF alarms with a perceived severity. CRITICAL,MAJOR,MINOR,WARNING, INDETERMINATE,CLEARED.

eventTypes (Optional)

body

array

Match VNF alarms with an event type. COMMUNICATIONS_ALARM, PROCESSING_ERROR_ALARM, ENVIRONMENTAL_ALARM, QOS_ALARM, EQUIPMENT_ALARM.

probableCauses (Optional)

body

array

Match VNF alarms with a probable cause listed in this attribute.

callbackUri

body

string

The URI of the endpoint to send the notification to.

authentication (Optional)

body

string

Authentication parameters to configure the use of Authorization when sending notifications corresponding to this subscription.

Request Example

{
  "filter": {
        "vnfInstanceSubscriptionFilter": {
            "vnfdIds": [
                "dummy-vnfdId-1"
            ],
            "vnfProductsFromProviders": [
                {
                    "vnfProvider": "Company",
                    "vnfProducts": [
                        {
                            "vnfProductName": "Sample VNF",
                            "versions": [
                                {
                                    "vnfSoftwareVersion": "1.0",
                                    "vnfdVersions": ["1.0", "2.0"]
                                }
                            ]
                        }
                    ]
                }
            ],
            "vnfInstanceIds": [
                "b0314420-0c9e-40e0-975e-4bf23b07d0c1"
            ],
            "vnfInstanceNames": [
                "test"
            ]
        },
        "notificationTypes": [
            "AlarmNotification",
            "AlarmClearedNotification"
        ],
        "faultyResourceTypes": [
            "COMPUTE"
        ],
        "perceivedSeverities": [
            "WARNING"
        ],
        "eventTypes": [
            "PROCESSING_ERROR_ALARM"
        ],
        "probableCauses": [
            "Process Terminated"
        ]
    },
    "callbackUri": "/nfvo/notify/alarm",
    "authentication": {
        "authType": [
            "BASIC"
        ],
        "paramsBasic": {
            "password": "ubuntu",
            "userName": "ubuntu"
        }
    }
}

Response Parameters

Name

In

Type

Description

id

body

string

Identifier of this subscription.

filter (Optional)

body

object

Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter.

vnfInstanceSubscriptionFilter (Optional)

body

object

Filter criteria to select VNF instances about which to notify.

vnfdIds (Optional)

body

array

If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute.

vnfProductsFromProviders (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProvider

body

string

If present, match VNF instances that belong to VNF products from certain providers.

vnfProducts (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProductName

body

string

Name of the VNF product to match.

versions (Optional)

body

array

If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.

vnfSoftwareVersion

body

object

Software version to match.

vnfdVersions (Optional)

body

array

Software version to match.

vnfInstanceIds (Optional)

body

array

If present, match VNF instances with an instance identifier listed in this attribute.

vnfInstanceNames (Optional)

body

array

If present, match VNF instances with a VNF Instance Name listed in this attribute.

notificationTypes (Optional)

body

array

Match particular notification types. Permitted values: AlarmNotification, AlarmClearedNotification, AlarmListRebuiltNotification.

faultyResourceTypes (Optional)

body

array

Match VNF alarms with a faulty resource type. COMPUTE, STORAGE, NETWORK.

perceivedSeverities (Optional)

body

array

Match VNF alarms with a perceived severity. CRITICAL,MAJOR,MINOR,WARNING, INDETERMINATE,CLEARED.

eventTypes (Optional)

body

array

Match VNF alarms with an event type. COMMUNICATIONS_ALARM, PROCESSING_ERROR_ALARM, ENVIRONMENTAL_ALARM, QOS_ALARM, EQUIPMENT_ALARM.

probableCauses (Optional)

body

array

Match VNF alarms with a probable cause listed in this attribute.

callbackUri

body

string

The URI of the endpoint to send the notification to.

_links

body

array

Links for this resource.

self

body

object

URI of this resource.

Response Example

{
    "id": "78a39661-60a8-4824-b989-88c1b0c3534a",
    "filter": {
        "vnfInstanceSubscriptionFilter": {
            "vnfdIds": [
                "dummy-vnfdId-1"
            ],
            "vnfProductsFromProviders": [
                {
                    "vnfProvider": "dummy-vnfProvider-1",
                    "vnfProducts": [
                        {
                            "vnfProductName": "dummy-vnfProductName-1-1",
                            "versions": [
                                {
                                    "vnfSoftwareVersion": "1.0",
                                    "vnfdVersions": ["1.0", "2.0"]
                                }
                            ]
                        }
                    ]
                }
            ],
            "vnfInstanceIds": [
                "dummy-vnfInstanceId-1"
            ],
            "vnfInstanceNames": [
                "dummy-vnfInstanceName-1"
            ]
        },
        "notificationTypes": [
            "AlarmNotification",
            "AlarmClearedNotification"
        ],
        "faultyResourceTypes": [
            "COMPUTE"
        ],
        "perceivedSeverities": [
            "WARNING"
        ],
        "eventTypes": [
            "EQUIPMENT_ALARM"
        ],
        "probableCauses": [
            "The server cannot be connected."
        ]
    },
    "callbackUri": "/nfvo/notify/alarm",
    "_links": {
        "self": {
            "href": "/vnffm/v1/subscriptions/78a39661-60a8-4824-b989-88c1b0c3534a"
        }
    }
}
GET
/vnffm/v1/subscriptions

Get all subscriptions (v1)

The GET method allows users to filter out subscriptions based on query parameter in the request.

If desired, e.g. to recover from an error situation, the API consumer can query information about its subscriptions by sending a GET request to the “Subscriptions” resource. In that case, the VNFM returns a “200 OK” response that contains the list of representations of all existing subscriptions that were created by the API consumer.

An attribute selector allows the API consumer to choose which attributes it wants to be contained in the response. all_fields, fields, exclude_fields and exclude_default can be set as query parameters.

Attribute-based filtering expression. The following attribute names shall be supported by the Tacker in the attribute-based filtering expression. All attribute names that appear in the FmSubscription and in data types referenced from it shall be supported by the VNFM in the filter expression. For example, below URI query parameter will match alarms with perceivedSeverity=WARNING

Response Codes

Success

Code

Reason

200 - OK

Request was successful.

Error

Code

Reason

400 - Bad Request

Some content in the request was invalid.

401 - Unauthorized

User must authenticate before making a request.

404 - Not Found

The requested resource could not be found.

406 - Not Acceptable

Not Acceptable, the requested resource is only capable of generating content not acceptable according to the ‘Accept’ headers sent in the request.

409 - Conflict

This operation conflicted with another operation on this resource.

Response Parameters

Name

In

Type

Description

id

body

string

Identifier of this subscription.

filter (Optional)

body

object

Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter.

vnfInstanceSubscriptionFilter (Optional)

body

object

Filter criteria to select VNF instances about which to notify.

vnfdIds (Optional)

body

array

If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute.

vnfProductsFromProviders (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProvider

body

string

If present, match VNF instances that belong to VNF products from certain providers.

vnfProducts (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProductName

body

string

Name of the VNF product to match.

versions (Optional)

body

array

If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.

vnfSoftwareVersion

body

object

Software version to match.

vnfdVersions (Optional)

body

array

Software version to match.

vnfInstanceIds (Optional)

body

array

If present, match VNF instances with an instance identifier listed in this attribute.

vnfInstanceNames (Optional)

body

array

If present, match VNF instances with a VNF Instance Name listed in this attribute.

notificationTypes (Optional)

body

array

Match particular notification types. Permitted values: AlarmNotification, AlarmClearedNotification, AlarmListRebuiltNotification.

faultyResourceTypes (Optional)

body

array

Match VNF alarms with a faulty resource type. COMPUTE, STORAGE, NETWORK.

perceivedSeverities (Optional)

body

array

Match VNF alarms with a perceived severity. CRITICAL,MAJOR,MINOR,WARNING, INDETERMINATE,CLEARED.

eventTypes (Optional)

body

array

Match VNF alarms with an event type. COMMUNICATIONS_ALARM, PROCESSING_ERROR_ALARM, ENVIRONMENTAL_ALARM, QOS_ALARM, EQUIPMENT_ALARM.

probableCauses (Optional)

body

array

Match VNF alarms with a probable cause listed in this attribute.

callbackUri

body

string

The URI of the endpoint to send the notification to.

_links

body

array

Links for this resource.

self

body

object

URI of this resource.

Response Example

[
    {
    "id": "78a39661-60a8-4824-b989-88c1b0c3534a",
    "filter": {
        "vnfInstanceSubscriptionFilter": {
            "vnfdIds": [
                "dummy-vnfdId-1"
            ],
            "vnfProductsFromProviders": [
                {
                    "vnfProvider": "dummy-vnfProvider-1",
                    "vnfProducts": [
                        {
                            "vnfProductName": "dummy-vnfProductName-1-1",
                            "versions": [
                                {
                                    "vnfSoftwareVersion": "1.0",
                                    "vnfdVersions": ["1.0", "2.0"]
                                }
                            ]
                        }
                    ]
                }
            ],
            "vnfInstanceIds": [
                "dummy-vnfInstanceId-1"
            ],
            "vnfInstanceNames": [
                "dummy-vnfInstanceName-1"
            ]
        },
        "notificationTypes": [
            "AlarmNotification",
            "AlarmClearedNotification"
        ],
        "faultyResourceTypes": [
            "COMPUTE"
        ],
        "perceivedSeverities": [
            "WARNING"
        ],
        "eventTypes": [
            "EQUIPMENT_ALARM"
        ],
        "probableCauses": [
            "The server cannot be connected."
        ]
    },
    "callbackUri": "/nfvo/notify/alarm",
    "_links": {
        "self": {
            "href": "/vnffm/v1/subscriptions/78a39661-60a8-4824-b989-88c1b0c3534a"
        }
    }
}
]
GET
/vnffm/v1/subscriptions/{subscriptionId}

Get a subscription (v1)

The POST method gets the subscription in the Tacker.

If desired, e.g. to recover from an error situation, the API consumer can read information about a particular subscription by sending a GET request to the resource representing that individual subscription. In that case, the VNFM returns a “200 OK” response that contains a representation of that individual subscription.

Response Codes

Success

Code

Reason

200 - OK

Request was successful.

Error

Code

Reason

400 - Bad Request

Some content in the request was invalid.

401 - Unauthorized

User must authenticate before making a request.

404 - Not Found

The requested resource could not be found.

406 - Not Acceptable

Not Acceptable, the requested resource is only capable of generating content not acceptable according to the ‘Accept’ headers sent in the request.

Request Parameters

Name

In

Type

Description

subscriptionId

path

string

Identifier of this subscription.

Response Parameters

Name

In

Type

Description

id

body

string

Identifier of this subscription.

filter (Optional)

body

object

Filter settings for this subscription, to define the subset of all notifications this subscription relates to. A particular notification is sent to the subscriber if the filter matches, or if there is no filter.

vnfInstanceSubscriptionFilter (Optional)

body

object

Filter criteria to select VNF instances about which to notify.

vnfdIds (Optional)

body

array

If present, match VNF instances that were created based on a VNFD identified by one of the vnfdId values listed in this attribute.

vnfProductsFromProviders (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProvider

body

string

If present, match VNF instances that belong to VNF products from certain providers.

vnfProducts (Optional)

body

array

If present, match VNF instances that belong to VNF products from certain providers.

vnfProductName

body

string

Name of the VNF product to match.

versions (Optional)

body

array

If present, match VNF instances that belong to VNF products with certain versions and a certain product name, from one particular provider.

vnfSoftwareVersion

body

object

Software version to match.

vnfdVersions (Optional)

body

array

Software version to match.

vnfInstanceIds (Optional)

body

array

If present, match VNF instances with an instance identifier listed in this attribute.

vnfInstanceNames (Optional)

body

array

If present, match VNF instances with a VNF Instance Name listed in this attribute.

notificationTypes (Optional)

body

array

Match particular notification types. Permitted values: AlarmNotification, AlarmClearedNotification, AlarmListRebuiltNotification.

faultyResourceTypes (Optional)

body

array

Match VNF alarms with a faulty resource type. COMPUTE, STORAGE, NETWORK.

perceivedSeverities (Optional)

body

array

Match VNF alarms with a perceived severity. CRITICAL,MAJOR,MINOR,WARNING, INDETERMINATE,CLEARED.

eventTypes (Optional)

body

array

Match VNF alarms with an event type. COMMUNICATIONS_ALARM, PROCESSING_ERROR_ALARM, ENVIRONMENTAL_ALARM, QOS_ALARM, EQUIPMENT_ALARM.

probableCauses (Optional)

body

array

Match VNF alarms with a probable cause listed in this attribute.

callbackUri

body

string

The URI of the endpoint to send the notification to.

_links

body

array

Links for this resource.

self

body

object

URI of this resource.

Request Example

{
    "id": "78a39661-60a8-4824-b989-88c1b0c3534a",
    "filter": {
        "vnfInstanceSubscriptionFilter": {
            "vnfdIds": [
                "dummy-vnfdId-1"
            ],
            "vnfProductsFromProviders": [
                {
                    "vnfProvider": "dummy-vnfProvider-1",
                    "vnfProducts": [
                        {
                            "vnfProductName": "dummy-vnfProductName-1-1",
                            "versions": [
                                {
                                    "vnfSoftwareVersion": "1.0",
                                    "vnfdVersions": ["1.0", "2.0"]
                                }
                            ]
                        }
                    ]
                }
            ],
            "vnfInstanceIds": [
                "dummy-vnfInstanceId-1"
            ],
            "vnfInstanceNames": [
                "dummy-vnfInstanceName-1"
            ]
        },
        "notificationTypes": [
            "AlarmNotification",
            "AlarmClearedNotification"
        ],
        "faultyResourceTypes": [
            "COMPUTE"
        ],
        "perceivedSeverities": [
            "WARNING"
        ],
        "eventTypes": [
            "EQUIPMENT_ALARM"
        ],
        "probableCauses": [
            "The server cannot be connected."
        ]
    },
    "callbackUri": "/nfvo/notify/alarm",
    "_links": {
        "self": {
            "href": "/vnffm/v1/subscriptions/78a39661-60a8-4824-b989-88c1b0c3534a"
        }
    }
}
DELETE
/vnffm/v1/subscriptions/{subscriptionId}

Delete a subscription (v1)

The DELETE method deletes the subscription in the Tacker

When the API consumer does not need the subscription anymore, it terminates the subscription by sending a DELETE request to the resource that represents the individual subscription. The VNFM acknowledges the successful termination of the subscription by returning a “204 No Content” response.

Response Codes

Success

Code

Reason

204 - No Content

The server has fulfilled the request by deleting the resource.

Error

Code

Reason

400 - Bad Request

Some content in the request was invalid.

401 - Unauthorized

User must authenticate before making a request.

404 - Not Found

The requested resource could not be found.

406 - Not Acceptable

Not Acceptable, the requested resource is only capable of generating content not acceptable according to the ‘Accept’ headers sent in the request.

409 - Conflict

This operation conflicted with another operation on this resource.

Request Parameters

Name

In

Type

Description

subscriptionId

path

string

Identifier of this subscription.