Dela via


Verifiera behörighet för kampanjer

Gäller för

  • Partnercenter

Lämpliga roller

  • global administratör
  • Administratörsagent

Kommentar

De nya handelsupplevelserna för licensbaserade tjänster innehåller många nya funktioner och är tillgängliga för alla Dobavljač rešenja u oblaku (CSP:er). Mer information finns i översikten över nya handelsupplevelser.

Parters kan kontrollera om en kundtransaktion är berättigad till en viss kampanj. Den här metoden returnerar True om kundtransaktionen är berättigad till en viss kampanj. Partner kan verifiera berättigandet innan de skickar en transaktion för att säkerställa att kampanjen tillämpas.

Förutsättningar

  • Autentiseringsuppgifter enligt beskrivningen i Partnercenter-autentisering. Det här scenariot stöder autentisering med både fristående app- och App+User-autentiseringsuppgifter.
  • Berättigande inkluderar den produkt-SKU-tillgänglighet som köpts, det kampanj-ID som utvärderas, kvantitet, varaktighet och faktureringsperiod för transaktionen.
  • Begränsningsfrekvensen för det här API:et är högst 625 begäranden per minut (RPM) per partnerklientorganisation. Anrop som överskrider gränsen resulterar i http-svaret på 429. Mer information om begränsning finns i vägledningen för begränsning .

REST-begäran

Syntax för begäran

Metod URI för förfrågan
POST {baseURL}/v1/customers/{customerId}/promotionEligibilities HTTP/1.1

URI-parameter

Använd följande frågeparametrar för att returnera tillgängliga kampanjer.

Namn Typ Obligatoriskt Beskrivning
customerId sträng Y Värdet är ett GUID-formaterat kund-klient-ID, som är en identifierare som gör att du kan ange en kund.

Begärandehuvuden

Mer information finns i REST-huvuden för Partnercenter.

Begärandetext

Brödtexten innehåller en samling PromotionEligibilitiesRequestItems. Den här tabellen beskriver egenskaperna för en PromotionEligibilitiesRequestItem.

Property Type Obligatoriskt Beskrivning
catalogItemId sträng Ja Katalogobjektidentifieraren.
kvantitet heltal Ja Antalet licenser eller instanser.
termDuration Datum/tid Ja En ISO 8601-representation av termens varaktighet. De aktuella värdena som stöds är P1M (en månad), P1Y (ett år) och P3Y (tre år).
billingCycle sträng Ja Värdet som anger typen av faktureringsperiod.
promotionId sträng Nej ID:et för befordransobjekt.

Exempel på begäran

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: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
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: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e133
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-svar

Om ett promotionId tillhandahålls och begäran lyckas returnerar den här metoden en samling berättiganderesultat. Om promotionId inte tillhandahålls och begäran lyckas returnerar den här metoden alla kampanjer som är tillgängliga för det angivna erbjudandet och motsvarande kundberättigande för varje kampanj.

Svarsframgång och felkoder

Varje svar levereras med en HTTP-statuskod som anger lyckad eller misslyckad och mer felsökningsinformation. Använd ett verktyg för nätverksspårning för att läsa den här koden, feltypen och fler parametrar. Den fullständiga listan finns i Felkoder.

Typer och beskrivningar av berättigandefel

Berättigandet returnerar falskt om berättigandekontrollerna fastställer att produkt-SKU:n som utvärderas mot kampanj-ID:t inte stämmer överens. Olika villkor och begränsningar utvärderas och returnerar feltyper för att beskriva villkoren som inte uppfylls för berättigandet.

Typ av berättigandefel Beskrivning av berättigandefel
InvalidCatalogItemId Det angivna CatalogItemId är ogiltigt.
InvalidPromotion Den angivna kampanjen är ogiltig.
PrerequisiteProductOwnership Kunden uppfyller inte kraven på produktägarskap för att vara berättigad till den här kampanjen.
RedemptionLimit Inlösengränsen för den här kampanjen har uppfyllts.
SeatCount Den angivna kvantiteten uppfyller inte kraven på lägsta eller högsta plats för befordran.
OfferPurchasedPreviously Det här erbjudandet har köpts tidigare för den här kunden.
Period Den angivna termen gäller inte för kampanjen.
NoPromotionsAvailable Det finns inga kampanjer tillgängliga just nu.

Svarsexempel

HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
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: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e133
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"
    }
}