使用合作伙伴中心 API 为间接经销商创建客户
适用于:合作伙伴中心
间接提供商可以为间接经销商创建客户。
先决条件
合作伙伴中心身份验证中所述的凭据。 此方案只支持使用应用凭据和用户凭据进行身份验证。
间接经销商的租户标识符。
间接经销商必须与间接提供商建立合作关系。
C#
若要为间接经销商添加新客户,请执行以下操作:
实例化新的 Customer 对象,然后实例化并填充 BillingProfile 和 CompanyProfile。 请务必将间接经销商 ID 分配给 AssociatedPartnerID 属性。
使用 IAggregatePartner.Customers 属性获取客户集合操作的接口。
调用 Create 或 CreateAsync 方法以创建客户。
C# 示例
// IAggregatePartner partnerOperations;
// var indirectResellerId;
var customerToCreate = new Customer()
{
CompanyProfile = new CustomerCompanyProfile()
{
Domain = string.Format(CultureInfo.InvariantCulture,
"WingtipToys{0}.{1}",
new Random().Next(),
this.Context.Configuration.Scenario.CustomerDomainSuffix)
},
BillingProfile = new CustomerBillingProfile()
{
Culture = "EN-US",
Email = "Gena@wingtiptoys.com",
Language = "En",
CompanyName = "Wingtip Toys",
DefaultAddress = new Address()
{
FirstName = "Gena",
LastName = "Soto",
AddressLine1 = "One Microsoft Way",
City = "Redmond",
State = "WA",
Country = "US",
PostalCode = "98052",
PhoneNumber = "4255550101"
}
},
AssociatedPartnerId = indirectResellerId
};
var newCustomer = partnerOperations.Customers.Create(customerToCreate);
示例: 控制台测试应用。 项目:合作伙伴中心 SDK 示例 类:CreateCustomerforIndirectReseller.cs
REST 请求
请求语法
方法 | 请求 URI |
---|---|
POST | {baseURL}/v1/customers HTTP/1.1 |
请求标头
有关详细信息,请参阅合作伙伴中心 REST 标头。
请求正文
下表描述了请求正文中的必需属性。
名称 | 类型 | 必需 | 说明 |
---|---|---|---|
BillingProfile | object | 是 | 客户的计费配置文件信息。 |
CompanyProfile | object | 是 | 客户的公司配置文件信息。 |
AssociatedPartnerId | string | 是 | 间接经销商 ID。 此处提供的 ID 指示的间接经销商必须与间接提供商建立合作关系,否则请求将失败。 另请注意,如果未提供 AssociatedPartnerId 值,则会将客户创建为间接提供商的直接客户,而不是间接经销商。 |
域 | 字符串 | 是 | 客户的域名,例如 contoso.onmicrosoft.com。 |
organizationRegistrationNumber | string | 是 | 客户的组织注册号(也称为某些国家/地区的 INN 号码)。 仅适用于位于以下国家/地区的客户公司/组织:亚美尼亚(AM)、阿塞拜疆(AZ)、白俄罗斯(BY)、匈牙利(HU)、哈萨克斯坦(KZ)、吉尔吉斯斯坦(KG)、摩尔多瓦(MD)、俄罗斯(RU)、塔吉克斯坦(TJ)、乌兹别克斯坦(UZ)、乌克兰(UA)、印度、 巴西、南非、波兰、阿拉伯联合酋长国、沙特阿拉伯、Türkiye、泰国、越南、缅甸、伊拉克、南苏丹和委内瑞拉。 对于位于其他国家/地区的客户的公司/组织,这是一个可选字段。 |
计费配置文件
下表描述了创建新客户所需的 CustomerBillingProfile 资源中所需的最小必填字段。
名称 | 类型 | 必需 | 说明 |
---|---|---|---|
电子邮件 | string | 是 | 客户的电子邮件地址。 |
culture | string | 是 | 他们首选的通信和货币文化,例如 en-US 。 请参阅 支持区域性的合作伙伴中心支持的语言和区域 设置。 |
language | string | 是 | 默认语言。 支持两个字符语言代码(例如 en 或 fr )。 |
company_name | string | 是 | 已注册的公司/组织名称。 |
default_address | Address | 是 | 客户的公司/组织的注册地址。 有关任何长度限制的信息,请参阅地址资源。 |
公司简介
下表描述了创建新客户所需的 CustomerCompanyProfile 资源中所需的最小必填字段。
名称 | 类型 | 必需 | 说明 |
---|---|---|---|
domain | string | 是 | 客户的域名,例如 contoso.onmicrosoft.com。 |
organizationRegistrationNumber | string | 取决于条件 | 客户的组织注册号(也称为某些国家/地区的 INN 号码)。 仅当客户的公司/组织位于以下国家/地区时,才需要完成此字段: - 亚美尼亚 (AM) - 阿塞拜疆 (AZ) - 白俄罗斯(BY) - 匈牙利(HU) - 哈萨克斯坦 (KZ) - 吉尔吉斯斯坦(公斤) - 摩尔多瓦 (MD) - 俄罗斯 (RU) - 塔吉克斯坦 (TJ) - 乌兹别克斯坦(乌兹) - 乌克兰 (UA) -印度 -巴西 -南非 -波兰 -阿拉伯联合酋长国 -沙特阿拉伯 - Türkiye -泰国 -越南 - 缅甸 -伊拉克 - 南苏丹 -委内瑞拉 - 中国 对于位于其他国家/地区的客户的公司/组织,这是一个可选字段。 |
GDAP 默认
名称 | Type | 描述 |
---|---|---|
enableGDAPByDefault | 布尔 | 用于指示我们是否要默认启用 GDAP 的布尔值。 如果为 true,则默认创建 GDAP。 如果为 false,则不会创建 GDAP。 请注意,这仅在支持 GDAP 的云中受支持。 如果没有支持,则默认情况下将创建 DAP。 |
请求示例
POST https://api.partnercenter.microsoft.com/v1/customers HTTP/1.1
Authorization: Bearer <token>
MS-RequestId: d628adbe-b7ee-412e-ac55-58f22b4ba2f4
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Client: Partner Center .NET SDK
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 823
Expect: 100-continue
Connection: Keep-Alive
{
"enableGDAPByDefault": false,
"Id": null,
"CommerceId": null,
"CompanyProfile": {
"TenantId": null,
"Domain": "WingtipToys678152504.onmicrosoft.com",
"CompanyName": null,
"Attributes": {
"ObjectType": "CustomerCompanyProfile"
}
},
"BillingProfile": {
"Id": null,
"FirstName": null,
"LastName": null,
"Email": "Gena@wingtiptoys.com",
"Culture": "EN-US",
"Language": "En",
"CompanyName": "Wingtip Toys",
"DefaultAddress": {
"Country": "US",
"Region": null,
"City": "Redmond",
"State": "WA",
"AddressLine1": "One Microsoft Way",
"AddressLine2": null,
"PostalCode": "98052",
"FirstName": "Gena",
"LastName": "Soto",
"PhoneNumber": "4255550101"
},
"Attributes": {
"ObjectType": "CustomerBillingProfile"
}
},
"RelationshipToPartner": "none",
"AllowDelegatedAccess": null,
"UserCredentials": null,
"CustomDomains": null,
"AssociatedPartnerId": "484e548c-f5f3-4528-93a9-c16c6373cb59",
"Attributes": {
"ObjectType": "Customer"
}
}
重要
截至 2023 年 6 月,最新的合作伙伴中心 .NET SDK 版本 3.4.0 现已存档。 可以从 GitHub 下载 SDK 版本,以及包含有用信息的自述文件。
建议合作伙伴继续使用合作伙伴中心 REST API。
REST 响应
如果成功,响应将 包含新客户的客户 资源。
响应的成功和错误代码
响应附带了一个 HTTP 状态代码,指示成功或失败和其他调试信息。 请使用网络跟踪工具来读取此代码、错误类型和其他参数。 如需完整列表,请参阅合作伙伴中心 REST 错误代码。
响应示例
HTTP/1.1 201 Created
Content-Length: 1085
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: d628adbe-b7ee-412e-ac55-58f22b4ba2f4
MS-CV: Yy/YaA0gYEmfQyR/.0
MS-ServerId: 030020525
Date: Tue, 06 Jun 2017 23:11:40 GMT
{
"enableGDAPByDefault": false,
"id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"commerceId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"companyProfile": {
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"domain": "WingtipToys678152504.onmicrosoft.com",
"companyName": "Wingtip Toys",
"links": {
"self": {
"uri": "/customers/aaaabbbb-0000-cccc-1111-dddd2222eeee/profiles/company",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "CustomerCompanyProfile"
}
},
"billingProfile": {
"id": "7079246e-7b62-56ef-7cbd-a819514b54b5",
"email": "Gena@wingtiptoys.com",
"culture": "en-US",
"language": "En",
"companyName": "Wingtip Toys",
"defaultAddress": {
"country": "US",
"city": "Redmond",
"state": "WA",
"addressLine1": "One Microsoft Way",
"postalCode": "98052",
"firstName": "Gena",
"lastName": "Soto",
"phoneNumber": "4255550101"
},
"attributes": {
"etag": "-8799889149591823008",
"objectType": "CustomerBillingProfile"
}
},
"relationshipToPartner": "reseller",
"allowDelegatedAccess": true,
"userCredentials": {
"userName": "admin",
"password": "0Krha*Io"
},
"associatedPartnerId": "484e548c-f5f3-4528-93a9-c16c6373cb59",
"attributes": {
"objectType": "Customer"
}
}