Including Event Data

You can include event data in TMF640 POST and PATCH operations by passing the MtxApiEventDataExtension MATRIXX Data Container (MDC) in the request.

You can pass the MtxApiEventDataExtension MDC in a multi request or a sub-request.

To pass event data in a multi request, create a serviceCharacteristic object named ApiEventData. You can then include the MtxApiEventDataExtension object with the field name ApiEventData in the serviceCharacteristic object.

To pass event data in a sub-request of a multi request, include the MtxApiEventDataExtension object with the field name ApiEventData in the serviceCharacteristic or featureCharacteristic object.

The following example TMF request shows the MtxApiEventDataExtension added to the MultiRequest root object as a serviceCharacteristic value:
 {
    "@type": "Service",
    "state": "active",
    "category": "",
    "description": "",
    "feature": [],
    "serviceType": "MtxOpSubscriptionCreate",
    "serviceSpecification":{
        "id":"1"
    },
    "serviceCharacteristic": [
        {
            "id": "1",
            "name": "MtxRequestSubscriptionCreate",
            "valueType": "object",
            "value": 
            {
                "TimeZone": "America/Edmonton",
                "BillingCycle": {
                    "$": "MtxBillingCycleData",
                    "BillingCycleId": 100,
                    "DateOffset": 124,
                    "ImmediateChange": true
                },
                "TaxStatus": 1,
                "TaxCertificate": "String",
                "TaxLocation": "String",
                "GlCenter": "String",
                "Name": "Subscription Name"
            }
        },
        {
            "id": "2",
            "name": "ApiEventData",
            "valueType": "object",
            "value": 
            {
                "ApiEventData": {
                    "$": "MtxApiEventDataExtension"
                }   
            }
        }
    ]  
}
This results in the following MATRIXX request:
{
  "$" : "MtxRequestMulti",
  "ApiEventData" : {
    "$" : "MtxApiEventDataExtension"
  },
  "RequestList" : [ {
    "$" : "MtxRequestSubscriptionCreate",
    "BillingCycle" : {
      "$" : "MtxBillingCycleData",
      "BillingCycleId" : 100,
      "DateOffset" : 124,
      "ImmediateChange" : true
    },
    "GlCenter" : "String",
    "Name" : "Subscription Name",
    "Status" : 1,
    "TaxCertificate" : "String",
    "TaxLocation" : "String",
    "TaxStatus" : 1,
    "TimeZone" : "America/Edmonton"
  }, {
    "$" : "MtxRequestSubscriptionQuery",
    "SubscriptionSearchData" : {
      "$" : "MtxSubscriptionSearchData",
      "MultiRequestIndex" : 0
    }
  } ]
}
The following example TMF request shows the MtxApiEventDataExtension added to a sub-request of a MultiRequest object:
{
    "@type": "Service",
    "state": "active",
    "category": "",
    "description": "",
    "feature": [],
    "serviceType": "MtxOpSubscriptionCreate",
    "serviceSpecification":{
        "id":"1"
    },
    "serviceCharacteristic": [
        {
            "id": "1",
            "name": "MtxRequestSubscriptionCreate",
            "valueType": "object",
            "value": 
            {
                "TimeZone": "America/Edmonton",
                "BillingCycle": {
                    "$": "MtxBillingCycleData",
                    "BillingCycleId": 100,
                    "DateOffset": 124,
                    "ImmediateChange": true
                },
                "TaxStatus": 1,
                "TaxCertificate": "String",
                "TaxLocation": "String",
                "GlCenter": "String",
                "Name": "Subscription Name",
                "ApiEventData": {
                    "$": "MtxApiEventDataExtension"
                } 
            }
        }
    ]  
}
This results in the following MATRIXX request:
{
  "$" : "MtxRequestMulti",
  "RequestList" : [ {
    "$" : "MtxRequestSubscriptionCreate",
    "ApiEventData" : {
      "$" : "MtxApiEventDataExtension"
    },
    "BillingCycle" : {
      "$" : "MtxBillingCycleData",
      "BillingCycleId" : 100,
      "DateOffset" : 124,
      "ImmediateChange" : true
    },
    "GlCenter" : "String",
    "Name" : "Subscription Name",
    "Status" : 1,
    "TaxCertificate" : "String",
    "TaxLocation" : "String",
    "TaxStatus" : 1,
    "TimeZone" : "America/Edmonton"
  }, {
    "$" : "MtxRequestSubscriptionQuery",
    "SubscriptionSearchData" : {
      "$" : "MtxSubscriptionSearchData",
      "MultiRequestIndex" : 0
    }
  } ]
}