Получение полей
Область применения: Центр партнеров
Соответствующие роли: агент по администрированию
В качестве партнера в программе CSP вы можете вызвать API GetMargins, чтобы получить список полей частного предложения, расширенных издателями isV.
Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с помощью автономных учетных данных приложения и приложения и пользователя.
[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
В случае успешного выполнения этот запрос возвращает список полей частного предложения. Издатель isV может настроить маржу частного предложения как фиксированную процентную скидку, которая применяется к исходной цене предложения, либо как пользовательская цена, которая переопределяет исходную цену предложения. Оба типа полей возвращаются в ответе API GetMargins.
Каждый элемент строки в ответе содержит даты начала и окончания. Поле частного предложения будет применяться только к покупкам, сделанным в течение этих двух дат. Покупки, сделанные за пределами этого периода времени, не получат преимущества частного поля предложения.
Каждый ответ поставляется с кодом состояния HTTP, который указывает на успешность или сбой и дополнительные сведения об отладке. Используйте средство трассировки сети для чтения этого кода, типа ошибки и других параметров. См. полный список кодов ошибок.
В этом примере издатель isV настроил частное предложение в качестве фиксированной процентной скидки от исходной цены предложения. Скидка отображается в свойстве "percentageMargin". Так как это частное предложение расширено для определенного номера SKU, указана информация об номере SKU, например имя SKU и идентификатор 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"
}
]
}
В этом примере издатель поставщика программного обеспечения настроит частную маржу предложения как пользовательскую цену, которая переопределяет исходную цену своего решения SaaS с пользовательскими счетчиками. Вместо свойства marginPercentage, как и в предыдущем примере, этот элемент строки содержит свойство priceConfiguration, содержащее сведения о пользовательских ценах.
Ценовая модель в этом примере указана как "плоская ставка", что означает, что вы оплачиваете определенную сумму за срок. Если isV взимает определенную сумму на пользователя, то цена На пользователя будет говорить "на пользователя".
Массив "покупка" содержит сведения о ценах для каждого срока. В этом примере isV настроена только продолжительность срока "Ежемесячно", но массив "покупка" также может содержать "годовой" срок. В конфигурации покупки для заданного термина включены значенияMeterQuantities для каждого пользовательского счетчика, включенного в цену. Так как издатель isV может настроить разные ценовые точки для разных рынков клиентов, массив marketSetPrices содержит пользовательскую цену для каждого рынка и валюты, в которую доступно частное предложение. В этом примере плоская ставка 448,75262 GPB для клиента на рынке ГБ (Соединенное Королевство) включает в себя 20 устройств и 30 000 сообщений электронной почты в месяц.
Массив "потребление" содержит сведения о превышении цен для каждого пользовательского счетчика. Если продукт поставщика программного обеспечения не имеет пользовательских счетчиков, этот массив будет пустым. Вы заметите, что массив потребления содержит элемент строки для каждого настраиваемого счетчика, указанного в списке "включенные счетчики". В этом примере при использовании более 20 устройств в месяц вы платите дополнительно 0,44729 ГБИТ/с на 1 дополнительное устройство в месяц. Если вы потребляете более 30 000 сообщений электронной почты, вы платите 0,38765 ГБИТ/с за 100 дополнительных писем в месяц.
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"
}
]
}
Приведенный выше пример должен привести к следующему.