Проверка права на получение акции
Применимо к:
- Центр партнеров
Соответствующие роли
- Агент по администрированию
Примечание.
Новые возможности коммерческой торговли для служб на основе лицензий включают множество новых возможностей и доступны для всех поставщик облачных решений (ПОСТАВЩИКОВ УСЛУГ). Дополнительные сведения см . в обзоре новых коммерческих возможностей.
Стороны могут проверить, может ли клиентская транзакция иметь право на данное повышение. Этот метод возвращает значение True , если транзакция клиента имеет право на данное повышение. Партнеры могут проверить право перед отправкой транзакции, чтобы убедиться, что повышение будет применено.
Необходимые компоненты
- Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с помощью автономных учетных данных приложения и приложения и пользователя.
- Доступность номера SKU продукта, приобретенная, идентификатор повышения, количество, длительность срока и период выставления счетов транзакции.
- Скорость регулирования для этого API составляет не более 625 запросов в минуту (RPM) для каждого клиента партнера. Вызовы, превышающие ограничение, приводят к http-ответу 429. Дополнительные сведения о регулировании см . в руководстве по регулированию.
Запрос REST
Синтаксис запроса
Способ | URI запроса |
---|---|
POST | {baseURL}/v1/customers/{customerId}/promotionEligibilities HTTP/1.1 |
Параметр универсального кода ресурса
Используйте следующие параметры запроса для возврата доступных рекламных акций.
Имя. | Type | Обязательно | Описание |
---|---|---|---|
customerId | string | Y | Это значение customer-tenant-id в формате GUID, то есть идентификатор для определения клиента. |
Заголовки запросов
Дополнительные сведения см. в статье о заголовках REST Центра партнеров.
Текст запроса
Текст включает коллекцию PromotionEligibilitiesRequestItems. В этой таблице описываются свойства для Объекта PromotionEligibilitiesRequestItem.
Свойство | Тип | Обязательно | Описание |
---|---|---|---|
catalogItemId | строка | Да | Идентификатор элемента каталога. |
quantity | INT | Да | Количество лицензий или экземпляров. |
termDuration | Дата и время | Да | Представление срока действия термина ISO 8601. Текущие поддерживаемые значения: P1M (один месяц), P1Y (один год) и P3Y (три года). |
billingCycle | строка | Да | Значение, указывающее тип период выставления счетов. |
promotionId | строка | Нет | Идентификатор элемента повышения. |
Пример запроса
POST https://api.partnercenter.microsoft.com/v1/customers/46632f71-f052-4384-8f84-4cdb6c12c2a1/promotionEligibilities 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
// Request example with promotion ID input
{
"items": [
{
"catalogItemId": "CFQ7TTC0LH2Z:0002:CFQ7TTC0HRVK",
"quantity": 2400,
"termDuration": "P1Y",
"billingCycle": "Monthly",
"promotionId": "39NFJQT1PM6C:0005:39NFJQT1Q5L7"
}
]
}
POST https://api.partnercenter.microsoft.com/v1/customers/46632f71-f052-4384-8f84-4cdb6c12c2a1/promotionEligibilities HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70b
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
X-Locale: en-US
// Request example with no promotion ID input
{
"items": [
{
"id": "0",
"catalogItemId": "CFQ7TTC0HBSJ:0001:CFQ7TTC0JQH3",
"quantity": 300,
"termDuration": "P1M",
"billingCycle": "monthly"
}
]
}
Ответ REST
Если указан рекламный идентификатор и запрос выполнен успешно, этот метод возвращает коллекцию результатов соответствия. Если рекламный идентификатор не указан и запрос выполнен успешно, этот метод возвращает все рекламные акции, доступные для указанного предложения, и соответствующее право клиента на каждое повышение.
Коды успешного выполнения и ошибок в ответе
Каждый ответ поставляется с кодом состояния HTTP, который указывает на успешность или сбой и дополнительные сведения об отладке. Используйте средство трассировки сети для чтения этого кода, типа ошибки и других параметров. См. полный список кодов ошибок.
Типы и описания ошибок соответствия
Право на получение прав возвращает значение false, если проверки соответствия требованиям определяют номер SKU продукта, вычисляемый по идентификатору повышения, не совпадают. Оцениваются различные условия и ограничения и возвращаются типы ошибок для описания условий, которые не соответствуют требованиям.
Тип ошибки соответствия | Описание ошибки соответствия |
---|---|
InvalidCatalogItemId | Предоставленный CatalogItemId недопустим. |
InvalidPromotion | Предоставленное повышение является недопустимым. |
Предварительный продуктOwnership | Клиент не соответствует необходимым требованиям к собственности на продукт, чтобы иметь право на это повышение. |
RedemptionLimit | Лимит выкупа для этой акции был выполнен. |
SeatCount | Предоставленное количество не удовлетворяет минимальным или максимальным требованиям к месту для продвижения. |
ПредложениеPurchasedPreviously | Это предложение было приобретено ранее для этого клиента. |
Термин | Указанный термин не применяется для продвижения. |
NoPromotionsAvailable | В настоящее время нет рекламных акций. |
Пример ответа
HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
Date: Fri, 26 Feb 2021 20:42:26 GMT
// Response example with promotion ID provided in the request
{
"totalCount": 1,
"items": [
{
"id": 0,
"catalogItemId": "CFQ7TTC0LH2Z:0002:CFQ7TTC0HRVK",
"quantity": 2400,
"billingCycle": "monthly",
"termDuration": "P1Y",
"eligibilities": [
{
"promotionId": "39NFJQT1PM6C:0005:39NFJQT1Q5L7",
"isEligible": false,
"errors": [
{
"minimumRequiredSeats": 1,
"maximumRequiredSeats": 2400,
"availableSeats": 500,
"type": "SeatCount",
"description": "The provided quantity does not satisfy the minimum or maximum seat requirements for the promotion."
}
]
}
],
"attributes": {
"objectType": "PromotionEligibilities"
}
}
],
"attributes": {
"objectType": "Collection"
}
}
HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70b
Date: Fri, 26 Feb 2021 20:42:26 GMT
// Response example with no promotion ID provided in the request
{
"totalCount": 1,
"items": [
{
"id": 0,
"catalogItemId": "CFQ7TTC0HBSJ:0001:CFQ7TTC0JQH3",
"quantity": 300,
"billingCycle": "monthly",
"termDuration": "P1M",
"eligibilities": [
{
"promotionId": "39NFJQT1XK5L:000J:39NFJQT1Q5D8",
"isEligible": true
},
{
"promotionId": "39NFJQT1XG89:0002:39NFJQT1Q5L2",
"isEligible": true
}
],
"attributes": {
"objectType": "PromotionEligibilities"
}
}
],
"attributes": {
"objectType": "Collection"
}
}