为了尝试在Azure中调用RateCard API,需要几个典型的Azure管理员不容易掌握的参数。这些包括:
如果我们仅有的是subscriptionID,我们如何以编程方式获取上述信息,以便获得预订的价目表?
尽管Microsoft在GitHub(https://github.com/Azure-Samples/billing-dotnet-ratecard-api)上的示例使用app.config进行了演示,但现实是,要求管理员对此进行深入研究存在很大的摩擦。必须有一种方法来获取此信息,而不必一直询问管理员。
调用价目表API的典型网址如下:
string url = $"https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId=\'{offerId}\' and Currency eq {currency} and Locale eq=\'{locale}\' and RegionInfo eq \'{regionInfo}\'";
有什么想法可以调用哪些API来从订阅ID中获取此信息?
答案 0 :(得分:0)
我认为,除了OfferDurableId
参数(您可以在Microsoft Azure Offer Details看到可用的值)之外,其余参数应具有固定值,具体取决于与您组织相关的用途。
例如,如果您的组织位于美国,那么您可能会使用:
货币:美元
语言环境:美国
RegionsInfo:美国
更新
不幸的是,API reference page明确声明要查询要约详细信息页面以获取所需的ID:
将{OfferDurableId}设置为有效的商品ID代码(例如,MS-AZR-0026P)。有关可用商品ID,国家/地区可用性和计费货币列表的更多信息,请参见Microsoft Azure Offer Details。优惠ID参数由“ MS-AZR-”前缀以及优惠ID号组成。
关于是否允许您使用您的订阅未使用的Currency / Locale / RegionInfo值进行查询,我认为应该(至少在某种程度上),因为您可以查询常规元数据。
希望有帮助!