Versions Compared

Key

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

Service Management API has been designed by having in mind that provisioning actions are based on the resources that need to be set each time to 3rd party system.

Resources and the amount of them that need to be set for provisioning, are extracted from subscriptions and addon characteristics.

Also, these resources are supposed to be enforced to 3rd party system and not to be increased/decreased separately in order always to have alignment between the interworks.cloud platform and 3rd party system. 

All these characteristics are provided to all related Service Manager API calls (Subscription Create, Subscription Update, Addon Create, Addon Update, Addon Cancel), every time a provisioning action is triggered by the interworks.cloud platform.

The way these characteristics should be used is up to the Service Manager API implementation that tries to translate the characteristics from subscription and addons to measured resources for the 3rd party system.

Enable/Disable Characteristics


A boolean characteristic allows us to enable a feature or not. This characteristic could be enabled directly to a subscription or could be enabled later through an addon purchase.

In order to decide whether a resource should be on or off, Service Manager API implementation should check the AttributeList on both subscription and addons in order to decide whether a feature is enabled or disabled for the 3rd party system.

For example, the following details should set the "Extra Feature" resource as enabled for provisioning to 3rd party system because the Addons-collection contains an Addon that has "Extra Feature" attribute with Value: "1".

Code Block
languagejs
titleSubscription Details
{
	"AttributeList": {
		"extra_feature": {
			"ID": "extra_feature",
			"Name": "Extra Feature",
			"Value": "0",
			"Code": ""
		}
	}
}


Code Block
languagejs
titleSubscription Addon Details
"Addons": [
		{
			"AttributeList": {
				"extra_feature": {
					"ID": "extra_feature",
					"Name": "Extra Feature",
					"Value": "1",
					"Code": ""
				}
		},
	   {
			"AttributeList": {
				"extra_feature": {
					"ID": "extra_feature",
					"Name": "Extra Feature",
					"Value": "0",
					"Code": ""
				}
		}
}]

Numeric Characteristics


Numeric characteristics allow us to determine the amount of a resource. The amount of a resource for this kind of characteristics is determined by summarizing the amount of resources delivered by the subscription and all the related addons.

In order to decide the total amount of a resource to be provisioned, Service Manager API implementation should check the AttributeList on both subscription and addons and summarize the amount of resources provided by each one.

Quantity Linked characteristics should also be considered here. A characteristic that is "QuantityLinked=true" should be multiplied by the subscriptions/addon quantity prior to summarizing with the rest resources of a subscription.

For example, let us assume that the input for Addon Create endpoint has the following details:


Code Block
languagejs
titleSubscription Details
{
	"Quantity": 5,
	"AttributeList": {
		"users": {
			"ID": "users",
			"Name": "Users",
			"Value": "1",
			"Code": "",
			"QuantityLinked": true
		},
		"storage": {
			"ID": "storage",
			"Name": "Storage (GB)",
			"Value": "100",
			"Code": "",
			"QuantityLinked": false
		}
	}
}

The resources for the subscription only, are summarized as:

  • Users: 5 x 1 = 5 Users (Quantity Linked attribute)
  • Storage: 100 GB (Non-Quantity Linked attribute)


Code Block
languagejs
titleSubscription Addon Details
"Addons": [
		{
			"Quantity": 10,
			"AttributeList": {
				"users": {
					"ID": "users",
					"Name": "Users",
					"Value": "1",
					"Code": "",
					"QuantityLinked": true
				}
		},
	   {
			"Quantity": 1,
			"AttributeList": {
				"storage": {
					"ID": "storage",
					"Name": "storage",
					"Value": "50",
					"Code": "",
					"QuantityLinked": false
				}
		}
}]

The resources for the subscription addons are summarized as:

  • Users: 10 x 1 = 10 Users (Quantity Linked attribute)
  • Storage: 50 GB (Non-Quantity Linked attribute)

So, the total resources to be provisioned for the subscription are:

  • Users:
    • 5 Users (Subscription)
    • 10 Users (Addons)
    • Total: 15 Users
  • Storage:
    • 100 GB (Subscription)
    • 50 GB (Addons)
    • Total: 150 GB

Table of Contents


Table of Contents
excludeTable of Contents