使用合作伙伴中心 API 从集成沙盒取消订单
适用于:合作伙伴中心 | 由世纪互联运营的合作伙伴中心 | Microsoft Cloud for US Government 合作伙伴中心
本文介绍如何使用合作伙伴中心 API 从集成沙盒帐户取消不同类型的订阅订单。 此类订单可以包括预留实例、软件和商业市场软件即服务(SaaS)订阅订单。
下表显示了沙盒和生产中的取消顺序。
产品类型 | 沙盒更新顺序 | 沙盒更新订阅 | 生产更新订单 | 生产更新订阅 |
---|---|---|---|---|
Azure 预留实例 | Y | N | N | N |
永久性软件 | Y | N | Y | N |
软件订阅 | Y | Y | Y | Y |
新商务 | N | Y | N | Y |
商业市场 | N | Y | N | Y |
Azure 计划 | N | Y | N | Y |
注意
仅可从集成沙盒帐户取消预留实例或商业市场 SaaS 订阅订单。 任何超过 60 天的沙盒订单都无法从合作伙伴中心取消。
若要通过 API 取消软件的生产订单,请使用 取消软件购买。 还可以使用 取消购买通过仪表板取消软件的生产订单。
先决条件
合作伙伴中心身份验证中所述的凭据。 此方案支持使用独立应用和 App+User 凭据进行身份验证。
集成沙盒合作伙伴帐户,客户拥有活动的预留实例/软件/第三方 SaaS 订阅订单。
C#
若要从集成沙盒取消订单,请将帐户凭据传递给 CreatePartnerOperations
方法以获取用于获取合作伙伴操作的 IPartner
接口。
若要选择特定 订单,请使用合作伙伴操作和调用 Customers.ById()
方法以及客户标识符来指定客户,后跟 Orders.ById()
订单标识符来指定订单,最后 Get
或 GetAsync
方法检索它。
将 Order.Status
属性 cancelled
设置为并使用 Patch()
方法更新顺序。
// IPartnerCredentials tipAccountCredentials;
// Customer tenant Id to be deleted.
// string customerTenantId;
IPartner tipAccountPartnerOperations = PartnerService.Instance.CreatePartnerOperations(tipAccountCredentials);
// Cancel order
var order = tipAccountPartnerOperations.Customers.ById(customerTenantId).Orders.ById(orderId).Get();
order.Status = "cancelled";
order = tipAccountPartnerOperations.Customers.ById(customerTenantId).Orders.ById(orderId).Patch(order);
REST 请求
请求语法
方法 | 请求 URI |
---|---|
PATCH | {baseURL}/v1/customers/{customer-tenant-id}/orders/{order-id} HTTP/1.1 |
URI 参数
使用以下查询参数删除客户。
名称 | 类型 | 必需 | 说明 |
---|---|---|---|
customer-tenant-id | guid | Y | 该值是 GUID 格式 的客户租户 ID ,允许经销商筛选属于经销商的给定客户的结果。 |
order-id | string | Y | 该值是一个字符串,表示需要取消的顺序 ID。 |
请求标头
有关详细信息,请参阅合作伙伴中心 REST 标头。
请求正文
{
"id": "UKXASSO1dezh3HdxClHxSp5UEFXGbAnt1",
"status": "cancelled",
}
请求示例
PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/orders/<order-id> HTTP/1.1
Accept: application/json
MS-RequestId: 655890ba-4d2b-4d09-a95f-4ea1348686a5
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
{
"id": "UKXASSO1dezh3HdxClHxSp5UEFXGbAnt1",
"status": "cancelled",
}
REST 响应
如果成功,此方法将返回已取消的订单。
响应的成功和错误代码
每个响应都有一个 HTTP 状态代码,指示成功或失败以及更多的调试信息。 使用网络跟踪工具读取此代码、错误类型和其他参数。 如需完整列表,请参阅合作伙伴中心 REST 错误代码。
响应示例
HTTP/1.1 200 OK
Content-Length: 866
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 655890ba-4d2b-4d09-a95f-4ea1348686a5
{
"id": "UKXASSO1dezh3HdxClHxSp5UEFXGbAnt1",
"alternateId": "11fc4bdfd47a",
"referenceCustomerId": "bd59b416-37f9-4d8f-8df3-5750111fc615",
"billingCycle": "one_time",
"currencyCode": "USD",
"currencySymbol": "$",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "DG7GMGF0DWT0:0001:DG7GMGF0DSQR",
"termDuration": "",
"transactionType": "New",
"friendlyName": "Microsoft Identity Manager 2016 - 1 User CAL",
"quantity": 1,
"links": {
"product": {
"uri": "/products/DG7GMGF0DWT0?country=US",
"method": "GET",
"headers": []
},
"sku": {
"uri": "/products/DG7GMGF0DWT0/skus/0001?country=US",
"method": "GET",
"headers": []
},
"availability": {
"uri": "/products/DG7GMGF0DWT0/skus/0001/availabilities/DG7GMGF0DSQR?country=US",
"method": "GET",
"headers": []
}
}
}
],
"creationDate": "2019-02-21T17:56:21.1335741Z",
"status": "cancelled",
"transactionType": "UserPurchase",
"attributes": {
"objectType": "Order"
}
}