Get Expected Cost

Table 1. Get Expected Cost of Services
Element Description
API Getexpectedcost
Description This API returns Expected Cost for services.
Numberte For public cloud this API will work if pricing jobs are enabled for all platforms (ARM, AMAZN by HCL BigFix CLM admin and GCP by provider admin) and for private cloud cost should be defined in catalog through in cost model.
Method POST
URL Http(s)://{xx.xxxx.xx.xx:xxx}/v3/costmodels/provisioningEndPoints/{endpointId}/expectedCosts
URL Parameters (fields in curly {} braces)
  • endpointId (Mandatory): This is a unique identifier of Cloud Endpoint created in HCL BigFix CLM. It can be any value either PlatformEntityId or Name of the Platform available on Manage Provisioning Platform screen.
Body parameters
{
"servicename":"virtualmachine",
 "keylist":["Region","OS","Size","Period","periodid","serviceplan","Disks"],
"vallist":["uswest","Windows","Basic_A0","9","Day(s)","ARM Service","SHDD~S6,SSSD~E30"],
"Summary" :"Yes",
"catalogentityid":"CAT-3A936176-1D21-4ED6-B5CD-C0BDFC264498"
}

keyList: it is an array of keys. For example:

["Region","Os","Usage","Period","PeriodId","ServicePlan"]

vallist: It is an array of values respective to the keys. KeyList and valueList array sequence should be same. For example,

["UsWest","Win","24","12","Day(s)","ARM Service"]

If we have multiple items, then valueList would be “pipe (|)” separated values for the items and key list would remain same. For example:

["UsWest|UsWest","Win|Lin","24|9","12|1","Day(s)|Month(s)","Silver|Platinum"]

In the case of Multiple Disk, DiskType and value should be separated by “tild(~)” and more than 1 disk in an item should be separated by “comma( , )”. For example,

One item one disk => ["DiskType~Value] or ["SDD~S1"]

One item multiple disk => ["DiskType1~Value1, "DiskType2~Value2] or ["HDD~A0, HDD~A1"]

Multiple item multiple disk => ["DiskTypeItem1~ValueItem1, "DiskTypeItem1~Valueitem1 | DiskTypeItem2~ValueItem2] OR

["HDD~A0, HDD~A1"|"SDD~S1"]

Below are service wise keyList and ValueList sample values:

Samples values of keylist and Valuelist of different services are given below:

Table 2. Samples values of keylist and Valuelist of different services
Cloud Provider Service Name Key List Value List
AMAZN VirtualMachine ["Region","OS","Size","Period","PeriodID","ServicePlan","Disks"] ["us-east-1","Windows","a1. medium","9","Day(s)","Silver","gp2~10, IOPS~20"]
AMAZN Disk ["Region", "Period","PeriodID","ServicePlan","Disks"] ["us-east-1","9","Day(s)","Silver","gp2~10, IOPS~20"]
ARM VirtualMachine ["Region","Os","Size","Period","PeriodID","ServicePlan","Disks"] ["UsWest|Japan","Windows|Linux",” Basic_A0|Basic_A0”,"9|3","Day(s)|Month(s)","ARM Platinum|Silver","SHDD~S6, SSSD~E30|PSSD~P1, SSSD~E40"]
ARM Disk ["Region","Period","PeriodID","ServicePlan","Disks"] ["australiacentral","9","Day(s)","ARM Service"," SHDD~S6, SSSD~E30, PSSD~P1"]
GCP VirtualMachine ["Region","OS","MachineType","Period","PeriodID","ServicePlan","Disks","Series","MachineClass"] [“us-west4”,"Widows|linux","n2d-highcpu-128| n2d-highcpu-128","9|3","Day(s)|Month(s)","Platinum|Silver",”N2D|N2”,”Preemptible|Regular”, 10~MachineImage~REGIONAL|10~LocalSSD~MULTI_REGIONAL”]
GCP Disk [“Region”,"Period","PeriodID","ServicePlan","Disks"] [“us-west4” ,"9|3","Day(s)|Month(s)","ARM Service|Amazon Service”,” 10~MachineImage~REGIONAL|10~LocalSSD~MULTI_REGIONAL”]
Private Cloud VirtualMachine ["Size”,"Period","PeriodID","ServicePlan",VCPU,Memory,"Disks"] ["Small”,"9|3","Day(s)|Month(s)","ARM Service|Amazon Service",”2”,”3”"10,20|10,20"]
Private Cloud Disk ["Period","PeriodID","ServicePlan","Disks"] ["9|3","Day(s)|Month(s)","ARM Service|Amazon Service","10,20|10,20"]
  • Servicename (Mandatory): Name of service to get cost.
  • Keylist(mandatory): It is the array of keynames which are required to calculate the cost of services on the.
  • Vallist (Mandatory): Values of corresponding keys and for multiple items user can pass values with “|” separator.
  • Summary (Madatory): There are 2 values for this key if “Yes” only sum of cost will return and if “number” then complete the details of cost will return.
  • Catalogentityid (Optional): It is mandatory for private cloud and for public cloud it is numbert require.
Header
  • Authorization Key: The initial step that needs to be performed before consuming HCL BigFix CLM APIs is to obtain the Token Value for an authorization key. Once a Token value is obtained, it remains valid for all API calls made in a session. For more information on how to do that, refer Token API description.
  • Content-type: application/json
Response
{
"totalRecords": 0,
"records": [
{
"itemNumber": 0,
"orgEntityId": "string",
"charagableItemCodeType": "string",
"itemValue": 0,
"periodInDays": 0,
"computeUnit": 0,
"organizationName": "string",
"location": "string",
"platformType": "string",
"servicePlanName": "string",
"costTypeName": "string",
"charagableItemTypeName": "string",
"instanceSize": "string",
"displayPeriod": "string",
"cost": 0,
"fixedCost": 0,
"recurringCost": 0,
"currency": "string"
}
]
}