Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

AttributeRequired?CardinalityContentValuesDescription

requestParameters

Y

1

JSON BLOB


A JSON object conaining service and customer-specific data. A client or service designer is required to specify the location of information in the JSON blob through optimization query policies.

placementDemands

Y

1..N

List of PlacementDemand Object


The resource information for a placement service.

subscriberInfoN1SubscriberInfo Object
The information of a service subscriber.

PlacementDemand Object

AttributeRequired?CardinalityContentValuesDescription

resourceModuleName

Y

1

String


A resource name as defined in a service model.

serviceResourceId

Y

1

String


A unique resource Id with a local scope between client and OOF.

tenantId

N

1

String


A tenant Id as defined in the ordering system.

resourceModelInfo

Y

1

ModelMetaData Object


Resource model information as defined in SDC.

existingCandidates

N

1..N

List of Candidates ObjectObjects


The existing placement information of a resource.

excludedCandidates

N

1..N

List of Candidates ObjectObjects


Candidates that need to be excluded from solutions.

requiredCandidates

N

1..N

List of Candidates ObjectObjects


Candidates that must be included in solutions.

...

SubscriberInfo Object

AttributeRequired?CardinalityContentValuesDescription
modelInvariantId

globalSubscriberId

Y

1

String

A model invariant Id as defined in a service model.

modelVersionId

Y

1

String

A unique model Id

An ID of a subscriber.

subscriberName

N

1.

String


The name of a subscriber.

subscriberCommonSiteIdN1String
Id representing a subscriber location.

ModelMetaData Object

AttributeRequired?CardinalityContentValuesDescription

modelInvariantId

Y

1

String


A model invariant Id as defined in a service model.

modelVersionId

Y

1

String


A unique model Id as defined in a service model.

modelName

N

1

String


A model name as defined in a service model.

modelType

N

1

String


A model type as defined in a service model.

modelVersion

N

1

String


A model version as defined in a service model.

modelCustomizationName

N

1

String


A model customization name as defined in a service model.

...

AttributeRequired?CardinalityContentValuesDescription

identifierType

Y

1

String

service_instance_id, vnf_name, cloud_region_id, vm_id

The type of a candidate.

identifiers

Y

1..N

List of Strings


A list of identifiers.

cloudOwnerC1String
The name of a cloud owner. Only required if identifierType is cloud_region_id.

ServiceInfo Object

AttributeRequired?CardinalityContentValuesDescription

serviceInstanceId

Y

1

String


A service instance id associated with a request.

serviceModelInfomodelInfo

Y

1

ModelMetaData Object


A list of identifiers.

serviceNameY1String
The name of a service.

LicenseInfo Object

AttributeRequired?CardinalityContentValuesDescription

licenseDemands

Y

1..N

List of LicenseDemands Object


A list of resources for license selection.

...

Code Block
languagejs
themeEclipse
titleSO-OOF/HAS Request Example
linenumberstrue
collapsetrue
{
  "requestInfo": {
    "transactionId": "xxx-xxx-xxxx",
    "requestId": "yyy-yyy-yyyy",
    "callbackUrl": "https://so:5000/callbackUrl",
    "sourceId": "SO",
    "requestType": "create",
    "numSolutions": 1,
    "optimizers": ["placement"],
    "timeout": 600
  },
  "placementInfo": {
  	"requestParameters": { "customerLatitude": 32.89748, "customerLongitude": -97.040443, "customerName": "xyz" },
  	"placementDemands": [
    	{
      		"resourceModuleName": "vGMuxInfra",
      		"serviceResourceId": "vGMuxInfra-xx",
      		"tenantId": "vGMuxInfra-tenant",
      		"resourceModelInfo": {
        		"modelInvariantId": "vGMuxInfra-modelInvariantId",
        		"modelVersionId": "vGMuxInfra-versionId",
        		"modelName": "vGMuxInfra-model",
        		"modelType": "resource",
        		"modelVersion": "1.0",
        		"modelCustomizationName": "vGMuxInfra-customeModelName"
      		}
    	},
    	{
      		"existingCandidatesresourceModuleName": { "identifierType": "service_instance_id", "identifiersvG",
      		"serviceResourceId": ["87257b4971d563e8-9602e714-4ca14393-98178f99-094e52bc873bcc480144a05e"] },
      		"excludedCandidatestenantId": { "identifierType": "service_instance_id", "identifiers": ["1ac71fb8-ad43-4e16-9459-c3f372b8236d"] },
      		"requiredCandidates": { "identifierType": "service_instance_id", "identifiers": ["7e6c3e57-62cd-44f6-aa88-d0896998f7ec"] }
    	},
    	{
      		"resourceModuleName": "vG",
      		"serviceResourceId": "71d563e8-e714-4393-8f99-cc480144a05e",
      		"tenantId": "vG-tenant",
      		"resourceModelInfo": {
        		"modelInvariantId": "vG-modelInvariantId",
        		"modelVersionId": "vG-versionId",
        		"modelName": "vG-model",
        		"modelType": "resourcevG-tenant",
      		"resourceModelInfo": {
        		"modelInvariantId": "vG-modelInvariantId",
        		"modelVersion": "1.0",
        		"modelCustomizationName"modelVersionId": "vG-customeModelName"
      		},
  versionId",
   	//	"existingCandidates": { "identifierType": "service_instance_id", "identifiers   		"modelName": ["21d5f3e8-e714-4383-8f99-cc480144505a"] },vG-model",
        	//	"excludedCandidatesmodelType": { "identifierType": "service_instance_id", "identifiersresource",
        		"modelVersion": ["1ac71fb8-ad43-4e16-9459-c3f372b8236d"] },"1.0",
        	//	"requiredCandidatesmodelCustomizationName": { "identifierType": "cloud_region_id", "identifiers": ["TXAUS219"] }
			vG-customeModelName"
      		},
			"existingCandidates": [ 
				{
					"identifier_type": "service_instance_id", 
					"cloud_owner": "", 
					"identifiers": ["gjhd-098-fhd-987"]
				}
    		],
			"excludedCandidates": [ 
				{
					"identifier_type": "service_instance_id", 
					"cloud_owner": "", 
					"identifiers": ["gjhd-098-fhd-987"]
				},
				{
					"identifier_type": "vim_id", 
					"cloud_owner": "vmware", 
					"identifiers": ["NYMDT67"]
				}
    		],
			"requiredCandidates": [ 
				{
					"identifier_type": "vim_id", 
					"cloud_owner": "amazon", 
					"identifiers": ["TXAUS219"]
				}
    		]
		}
  	]
  },
  "serviceInfo": {
    "serviceInstanceId": "d61b2543-5914-4b8f-8e81-81e38575b8ec",
	"serviceName": "vCPE",
    "serviceModelInfomodelInfo": {
      "modelInvariantId": "vCPE-invariantId",
      "modelVersionId": "vCPE-versionId",
      "modelName": "vCPE-model",
      "modelType": "service",
      "modelVersion": "1.0",
      "modelCustomizationName": "vCPE-customeModelName"
    }
  },
  "licenseDemands": [
    {
      "resourceModuleName": "vGMuxInfra",
      "serviceResourceId": "vGMuxInfra-xx",
      "tenantId": "vGMuxInfra-tenant",
      "resourceModelInfo": {
        "modelInvariantId": "vGMuxInfra-modelInvariantId",
        "modelVersionId": "vGMuxInfra-versionId",
        "modelName": "vGMuxInfra-model",
        "modelType": "resource",
        "modelVersion": "1.0",
        "modelCustomizationName": "vGMuxInfra-customeModelName"
      },
      "existingLicenses": {
        "entitlementPoolUUID": ["87257b49-9602-4ca1-9817-094e52bc873b", "43257b49-9602-4fe5-9337-094e52bc9435"],
        "licenseKeyGroupUUID": ["87257b49-9602-4ca1-9817-094e52bc873b", "43257b49-9602-4fe5-9337-094e52bc9435"]
      }
    }
  ]
}

...

Code Block
languagejs
themeEclipse
titleSO-OOF/HAS Response Example
linenumberstrue
collapsetrue
{
  "transactionId": "xxx-xxx-xxxx",
  "requestId": "yyy-yyy-yyyy",
  "requestStatus": "completed",
  "statusMessage": "Success!",
  "solutions": {
    "placementSolutions": [
      {
        "resourceModuleName": "vGMuxInfra",
        "serviceResourceId": "some_resource_id",
		"solution": {
        	"identifierTypeidentifier_type": "service_instance_id", 
       			"identifieridentifiers": ["1ac71fb8gjhd-ad43098-4e16fhd-9459-c3f372b8236d987"]
		}
        "assignmentInfo": [
          { "key": "cloudOwner", "value": "amazon" },
          { "key": "vnfHostName", "value": "ahr344gh" },
          { "key": "isRehome", "value": "False" },
          { "key": "cloud_region_id", "value": "1ac71fb8-ad43-4e16-9459-c3f372b8236d" }
        ]
      },
      {
        "resourceModuleName": "vG",
        "serviceResourceId": "some_resource_id",
        "solution": {
        	"identifierTypeidentifier_type": "servicecloud_instanceregion_id", 
			"cloud_owner": "amazon", 
    			"identifieridentifiers": ["1ac71fb8gjhd-ad43098-4e16fhd-9459-c3f372b8236d987"]
		}
        "assignmentInfo": [
          { "key": "cloudOwner", "value": "amazon" },
          { "key": "cloud_region_id", "value": "1ac71fb8-ad43-4e16-9459-c3f372b8236d" }
        ]
      }
    ],
    "licenseSolutions": [
      {
        "resourceModuleName": "vGMuxInfra",
        "serviceResourceId": "some_resource_id",
        "entitlementPoolUUID": ["1ac71fb8-ad43-4e16-9459-c3f372b8236d", "834fc71fb8-ad43-4fh7-9459-c3f372b8236f"],
        "licenseKeyGroupUUID": ["1ac71fb8-ad43-4e16-9459-c3f372b8236d", "834fc71fb8-ad43-4fh7-9459-c3f372b8236f"],
        "entitlementPoolInvariantUUID": ["1ac71fb8-ad43-4e16-9459-c3f372b8236d", "834fc71fb8-ad43-4fh7-9459-c3f372b8236f"],
        "licenseKeyGroupInvariantUUID": ["1ac71fb8-ad43-4e16-9459-c3f372b8236d", "834fc71fb8-ad43-4fh7-9459-c3f372b8236f"]
      }
    ]
  }
}

...