获取保证金
适用于:合作伙伴中心
相应的角色:管理员代理
作为 CSP 计划的合作伙伴,可以调用 GetMargins API 来获取 ISV 发布者扩展给你的专用产品/服务利润列表。
先决条件
合作伙伴中心身份验证中所述的凭据。 此方案支持使用独立应用和 App+User 凭据进行身份验证。
REST 请求
[GET] /v1/margins
请求语法
方法 | 请求 URI |
---|---|
GET | {baseURL}/v1/margins HTTP/1.1 |
请求标头
有关详细信息,请参阅合作伙伴中心 REST 标头。
请求正文
无
请求示例
GET https://api.partnercenter.microsoft.com/v1/margins HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
REST 响应
如果成功,此请求将返回专用产品/服务利润率列表。 ISV 发布者可以将专用产品/服务利润率配置为固定百分比折扣,该折扣适用于产品/服务的原始价格,也可以配置为替代产品/服务原始价格的自定义价格。 这两种边距类型都在 GetMargins API 响应中返回。
响应中的每个行项都包含开始日期和结束日期。 专用产品/服务保证金仅适用于在这两个日期内进行的购买。 在该时间范围之外进行的购买不会获得私人产品/服务保证金的好处。
响应的成功和错误代码
每个响应都有一个 HTTP 状态代码,指示成功或失败以及更多的调试信息。 使用网络跟踪工具读取此代码、错误类型和其他参数。 有关完整列表,请参阅错误代码。
响应示例
基于百分比的私人产品/服务利润率
在此示例中,ISV 发布者将专用产品/服务利润率配置为产品/服务原始价格的固定百分比折扣。 折扣显示在“percentageMargin”属性中。 由于此专用产品/服务针对特定 SKU 进行了扩展,因此指定 SKU 名称和 SKU ID 等 SKU 信息。 如果 ISV 发布者选择为所有 SKU 扩展专用产品/服务,则不会指定此信息。
响应
HTTP/1.1 200 OK
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
{
"pageSize": 1,
"totalSize": 1,
"results": [
{
"id": "1aa125798b04_01a14813-f6d1-494a-ace1-b84525cf3db4",
"type": "Percentage",
"productId": "DZH318Z0HJ49",
"publisherName": "Test Publisher Name",
"productTitle": "Test Offer Beta",
"skuTitle": "Test Offer Beta SKU 1",
"skuId": "0001",
"productType": "SaaS",
"marginPercentage": 10.0,
"startDate": "2022-02-24T18:38:02.8104364Z",
"endDate": "2022-04-30T23:59:59Z",
"status": "live",
"statusDate": "2022-02-24T18:38:02.8104364Z"
}
]
}
自定义价格私人产品/服务利润率
在此示例中,ISV 发布者将专用产品/服务利润率配置为自定义价格,以使用自定义计量替代其 SaaS 解决方案的原始价格。 此行项包含 priceConfiguration 属性,而不是上一个示例中的 marginPercentage 属性,该属性包含自定义定价的详细信息。
此示例中的 pricingModel 被列为“统一费率”模型,这意味着你为每个术语支付一定金额。 如果 ISV 为每个用户收取一定金额,则 pricingModel 会说“每个用户”。
“purchase”数组包含每个期限的定价详细信息。 此示例中的 ISV 只配置了“每月”期限持续时间,但“购买”数组还可以包含“年度”期限持续时间。 在给定期限的购买配置中,includedMeterQuantities 表示价格中包含的每个自定义计量的金额。 由于 ISV 发布者可以为不同的客户市场配置不同的价格点,因此 marketSetPrices 数组包含每个市场和专用产品/服务可用的货币的自定义价格。 在此示例中,GB(英国)市场客户的统一费率为 448.75262 GPB,每月包括 20 台设备和 30,000 封电子邮件。
“消耗”数组包含每个自定义计量的超额定价信息。 如果 ISV 的产品没有自定义计量,则此数组将为空。 你会注意到,消耗数组包含“includedMeterQuantities”中列出的每个自定义计量的行项。 在此示例中,如果每月消耗 20 台设备以上,则每月额外支付 0.44729 GBP/1 个额外的设备。 如果你使用超过 30,000 封电子邮件,则每月每 100 封电子邮件支付 0.38765 GBP。
响应
HTTP/1.1 200 OK
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
{
"pageSize": 1,
"totalSize": 1,
"results": [
{
"id": "15680381dbad_fe3f0bc2-6372-48af-bbec-2df83918dbf2",
"type": "CustomPrice",
"productId": "DZH318Z0BDGN",
"publisherName": "Test Publisher Name",
"productTitle": "Test Offer Gamma",
"skuTitle": "Test Offer Gamma SKU 1",
"skuId": "0001",
"productType": "SaaS",
"priceConfiguration": {
"pricingModel": "Flat rate",
"purchase": [
{
"termDuration": "Monthly",
"includedMeterQuantities": [
"20 device",
"30000 email"
],
"startDate": "2022-01-31T17:49:25.1346812Z",
"endDate": "2028-08-31T23:59:59Z",
"marketSetPrices": [
{
"markets": [
"GB"
],
"currency": "GBP",
"customPrice": 447.29387
},
{
"markets": [
"BG",
"FI",
"IT",
"RO"
],
"currency": "GBP",
"customPrice": 448.75262
}
]
}
],
"consumption": [
{
"meterType": "device",
"unitofMeasure": "per 1 device",
"startDate": "2022-01-01T00:00:00Z",
"endDate": "2028-08-31T23:59:59Z",
"marketSetPrices": [
{
"markets": [
"GB"
],
"currency": "GBP",
"customPrice": 0.44729
},
{
"markets": [
"BG",
"FI",
"IT",
"RO"
],
"currency": "GBP",
"customPrice": 0.44875
}
]
},
{
"meterType": "email",
"unitofMeasure": "per 100 emails",
"startDate": "2022-01-01T00:00:00Z",
"endDate": "2028-08-31T23:59:59Z",
"marketSetPrices": [
{
"markets": [
"GB"
],
"currency": "GBP",
"customPrice": 0.38765
},
{
"markets": [
"BG",
"FI",
"IT",
"RO"
],
"currency": "GBP",
"customPrice": 0.38892
}
]
}
]
},
"startDate": "2022-01-31T17:49:25.1346812Z",
"endDate": "2028-08-31T23:59:59Z",
"status": "live",
"statusDate": "2022-01-31T17:49:25.1346812Z"
}
]
}
上面的示例应生成以下结果。