Udostępnij za pośrednictwem


Sprawdź uprawnienia do promocji

Dotyczy

  • Centrum partnerskie

Odpowiednie role

  • Agent administracyjny

Uwaga

Nowe doświadczenia handlowe dla usług opartych na licencjach obejmują wiele nowych funkcji i są dostępne dla wszystkich Dostawców Rozwiązań w Chmurze (CSP - Cloud Solution Providers). Aby uzyskać więcej informacji, zobacz przegląd nowych doświadczeń handlowych.

Parterzy mogą sprawdzić, czy transakcja klienta kwalifikuje się do danej promocji. Ta metoda zwraca True, jeśli transakcja klienta kwalifikuje się do danej promocji. Partnerzy mogą zweryfikować uprawnienia przed przesłaniem transakcji, aby upewnić się, że promocja zostanie zastosowana.

Wymagania wstępne

  • Dane uwierzytelniające zgodnie z opisem w uwierzytelnianiu w Centrum Partnerów. Ten scenariusz obsługuje uwierzytelnianie zarówno autonomicznych poświadczeń aplikacji, jak i poświadczeń aplikacji+użytkownika.
  • Uprawnienia obejmują zakupioną dostępność jednostki SKU produktu, szacowany identyfikator promocji, ilość, czas trwania terminu i cykl rozliczeniowy transakcji.
  • Szybkość ograniczania dla tego interfejsu API wynosi maksymalnie 625 żądań na minutę (RPM) dla dzierżawy partnera. Wywołania, które przekraczają limit, spowodują odpowiedź HTTP 429. Aby uzyskać informacje na temat ograniczania przepustowości, zobacz wskazówki dotyczące ograniczania przepustowości.

Żądanie REST

Składnia żądania

Metoda Identyfikator URI żądania
POST {baseURL}/v1/customers/{customerId}/promotionEligibilities HTTP/1.1

Parametr identyfikatora URI

Użyj następujących parametrów zapytania, aby zwrócić dostępne promocje.

Nazwisko Typ Wymagane opis
customerId string Y Wartość jest identyfikatorem GUID w formacie customer-tenant-id, który jest identyfikatorem umożliwiającym określenie klienta.

Nagłówki żądań

Aby uzyskać więcej informacji, zobacz Nagłówki REST Centrum Partnerskiego.

Treść żądania

Treść zawiera kolekcję PromotionEligibilitiesRequestItems. W tej tabeli opisano właściwości elementu PromotionEligibilitiesRequestItem.

Właściwość Typ Wymagane opis
catalogItemId string Tak Identyfikator elementu wykazu.
ilość int Tak Liczba licencji lub wystąpień.
czas trwania Znacznik czasu Tak Reprezentacja ISO 8601 czasu trwania okresu. Bieżące obsługiwane wartości to P1M (jeden miesiąc), P1Y (jeden rok) i P3Y (trzy lata).
billingCycle string Tak Wartość wskazująca typ cyklu rozliczeniowego.
identyfikator promocji sznurek Nie Identyfikator elementu promocyjnego.

Przykład żądania

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"
        }
    ]
}

Odpowiedź REST

Jeśli podano identyfikator promocji i żądanie zakończy się powodzeniem, ta metoda zwraca kolekcję wyników kwalifikowalności. Jeśli wartość promotionId nie zostanie podana i żądanie zakończy się powodzeniem, ta metoda zwraca wszystkie promocje dostępne dla określonej oferty oraz odpowiednie uprawnienia klienta do każdej promocji.

Kody sukcesu i błędów odpowiedzi

Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i więcej informacji o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i inne parametry. Aby zobaczyć pełną listę, zobacz Kody błędów.

Typy błędów dotyczące kwalifikowalności i ich opisy

Uprawnienie zwróci wartość false, jeśli sprawdzanie uprawnień określi, że jednostka SKU produktu oceniana względem identyfikatora promocji nie jest zgodna. Różne warunki i ograniczenia są oceniane, a zwracane typy błędów opisują warunki niespełnione dla kwalifikowalności.

Typ błędu kwalifikowalności Opis błędu kwalifikowalności
InvalidCatalogItemId Podany identyfikator CatalogItemId jest nieprawidłowy.
NieprawidłowaPromocja Podana promocja jest nieprawidłowa.
WłasnośćWymaganegoProduktu Klient nie spełnia wymagań wstępnych dotyczących własności produktu, aby kwalifikować się do tej promocji.
LimitOdkupienia Osiągnięto limit wykupu dla tej promocji.
LiczbaMiejsc Podana ilość nie spełnia minimalnych ani maksymalnych wymagań dotyczących miejsca w promocji.
Oferta zakupiona wcześniej Ta oferta została zakupiona wcześniej dla tego klienta.
Termin Podany termin nie ma zastosowania do promocji.
Brak dostępnych promocji Obecnie nie ma dostępnych promocji.

Przykład odpowiedzi

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"
    }
}