如何解决SoftLayer API:如何取消网关设备群集的计费项目
我们的代码是取消所有订购的计费项目。但是取消计费项目Gateway Appliance Cluster
时出现错误,并显示“ SoftLayerAPIError(SoftLayer_Exception_Public):此计费项目类别无法取消。”。
能否请您告知如何取消此结算项目?谢谢。
解决方法
要取消网关设备,可以使用SoftLayer_Billing_Item::cancelItem
要在您的帐户中获取所有网关及其账单项ID,可以使用以下rest api调用:
方法:GET
https://api.softlayer.com/rest/v3.1/SoftLayer_Account/getHardware?objectMask=mask[id,networkGatewayMemberFlag,billingItem[id]]&objectFilter={"hardware":{"networkGatewayMemberFlag":{"operation":1}}}
要取消网关设备,请参见以下python脚本示例:
import SoftLayer
from pprint import pprint as pp
# Use the hardware gateway id from request above.
hardware_id = 85467
client = SoftLayer.Client()
hardwareResult = client['SoftLayer_Hardware'].getBillingItem(id=hardware_id)
billingItemId = hardwareResult['id']
try:
result = client['SoftLayer_Billing_Item'].cancelItem(
False,True,"No longer needed","Api test",id=billingItemId)
pp(result)
except SoftLayer.SoftLayerAPIError as e:
pp('Unable to get billing item information faultCode=%s,faultString=%s'
% (e.faultCode,e.faultString))
参考:
https://cloud.ibm.com/docs/gateway-appliance?topic=gateway-appliance-cancel-gateway-appliance
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。