Verifiera kampanjbehörighet
Gäller för
- Partnercenter
Lämpliga roller
- Administratörsagent
Anteckning
De nya handelsupplevelserna för licensbaserade tjänster innehåller många nya funktioner och är tillgängliga för alla Molnlösningsleverantör (CSP:er). För mer information, se ö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 kvalificerad för 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 som mest 625 begäranden per minut (RPM) per partnervärd. Anrop som överskrider gränsen resulterar i http-svaret på 429. För information om begränsning, se vägledningen för begränsning.
REST-begäran
Syntax för begäran
Metod | Begäran URI |
---|---|
POST | {baseURL}/v1/customers/{customerId}/promotionEligibilities HTTP/1.1 |
URI-parametern
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
För mer information, se REST-huvuden för Partnercenter.
Begärandeinnehåll
Brödtexten innehåller en samling av PromotionEligibilitiesRequestItems. Den här tabellen beskriver egenskaperna för en PromotionEligibilitiesRequestItem.
Egendom | Typ | Obligatoriskt | Beskrivning |
---|---|---|---|
katalogartikel-ID | sträng | Ja | Katalogobjektidentifieraren. |
kvantitet | heltal | Ja | Antalet licenser eller instanser. |
termlängd | 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 | Identifierare för kampanjobjekt. |
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: 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-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 |
---|---|
OgiltigtKatalogArtikelId | Det angivna CatalogItemId är ogiltigt. |
Ogiltig kampanj | Den tillhandahållna kampanjen är ogiltig. |
Förutsatt produktägande | Kunden uppfyller inte kraven på produktägarskap för att vara berättigad till den här kampanjen. |
Inlösningsgräns | Inlösengränsen för den här kampanjen har uppfyllts. |
Sätesantal | Den angivna kvantiteten uppfyller inte kraven på lägsta eller högsta plats för befordran. |
Tidigare köpt erbjudande | Det här erbjudandet har köpts tidigare för den här kunden. |
Termin | Den angivna termen gäller inte för kampanjen. |
Inga kampanjer tillgängliga | Det finns inga kampanjer tillgängliga just nu. |
Svarsexempel
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"
}
}