Udostępnij za pośrednictwem


Pobieranie marginesów

Dotyczy: Centrum partnerskie

Odpowiednie role: Agent administracyjny

Jako partner w programie CSP możesz wywołać interfejs API GetMargins, aby uzyskać listę marginesów ofert prywatnych rozszerzonych dla Ciebie przez wydawców niezależnych dostawców oprogramowania.

Wymagania wstępne

Poświadczenia zgodnie z opisem w temacie Uwierzytelnianie w Centrum partnerskim. Ten scenariusz obsługuje uwierzytelnianie zarówno przy użyciu autonomicznych poświadczeń aplikacji, jak i aplikacji i użytkownika.

Żądanie REST

[GET] /v1/margins

Składnia żądania

Method Identyfikator URI żądania
GET {baseURL}/v1/margins HTTP/1.1

Nagłówki żądań

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

Treść żądania

Brak

Przykład żądania

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

Odpowiedź REST

Jeśli to żądanie powiedzie się, zwraca listę prywatnych marginesów ofert. Wydawca niezależnego dostawcy oprogramowania może skonfigurować prywatny margines oferty jako stały rabat procentowy, który jest stosowany do oryginalnej ceny oferty lub jako cena niestandardowa, która zastępuje oryginalną cenę oferty. Oba typy marginesów są zwracane w odpowiedzi interfejsu API GetMargins.

Każdy element wiersza w odpowiedzi zawiera daty rozpoczęcia i zakończenia. Marża oferty prywatnej zostanie zastosowana tylko w przypadku zakupów dokonanych w tych dwóch dniach. Zakupy dokonane poza tym przedziałem czasu nie uzyskają korzyści z marży oferty prywatnej.

Kody powodzenia 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 uzyskać pełną listę, zobacz Kody błędów.

Przykłady odpowiedzi

Marża oferty prywatnej opartej na procentach

W tym przykładzie wydawca niezależnego dostawcy oprogramowania skonfigurował prywatny margines oferty jako stały rabat procentowy od oryginalnej ceny oferty. Rabat jest wyświetlany we właściwości "percentageMargin". Ponieważ ta oferta prywatna została rozszerzona dla określonej jednostki SKU, określono informacje o jednostce SKU, takie jak nazwa jednostki SKU i identyfikator jednostki SKU. Jeśli wydawca niezależnego dostawcy oprogramowania zdecydował się rozszerzyć ofertę prywatną dla wszystkich jednostek SKU, te informacje nie zostaną określone.

Response

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

Marża oferty prywatnej w cenie niestandardowej

W tym przykładzie wydawca niezależnego dostawcy oprogramowania skonfigurował prywatny margines oferty jako cenę niestandardową, która zastępuje oryginalną cenę rozwiązania SaaS za pomocą mierników niestandardowych. Zamiast właściwości marginPercentage, jak w poprzednim przykładzie, ten element wiersza zawiera właściwość priceConfiguration zawierającą szczegóły cennika niestandardowego.

Model cen w tym przykładzie jest wymieniony jako model "stawki płaskiej", co oznacza, że płacisz ustaloną kwotę za termin. Jeśli niezależnego dostawcy oprogramowania pobiera ustawioną kwotę na użytkownika, wówczas model cen będzie miał wartość "za użytkownika".

Tablica "zakup" zawiera szczegóły cennika dla każdego okresu trwania. Niezależne dostawcy oprogramowania w tym przykładzie skonfigurowali tylko okres trwania terminu "Miesięczny", ale tablica "zakup" może również zawierać termin "Roczny". W ramach konfiguracji zakupu dla danego terminu uwzględnioneMeterQuantities określa kwoty dla każdego miernika niestandardowego, które są uwzględnione w cenie. Ponieważ wydawca niezależnego dostawcy oprogramowania może skonfigurować różne punkty cenowe dla różnych rynków klientów, tablica marketSetPrices zawiera niestandardową cenę dla każdego rynku i waluty, w jakiej jest dostępna oferta prywatna. W tym przykładzie stawka płaska 448,75262 GPB dla klienta na rynku GB (Wielka Brytania) obejmuje 20 urządzeń i 30 000 wiadomości e-mail miesięcznie.

Tablica "consumption" zawiera informacje o cenach nadwyżkowych dla każdego miernika niestandardowego. Jeśli produkt niezależnego dostawcy oprogramowania nie ma mierników niestandardowych, ta tablica będzie pusta. Zauważysz, że tablica zużycie zawiera element wiersza dla każdego miernika niestandardowego, który znajduje się na liście "includedMeterQuantities". W tym przykładzie, jeśli zużywasz ponad 20 urządzeń miesięcznie, zapłacisz dodatkowe 0,44729 GBP za 1 dodatkowe urządzenie miesięcznie. Jeśli korzystasz z ponad 30 000 wiadomości e-mail, zapłacisz 0,38765 GB za 100 dodatkowych wiadomości e-mail miesięcznie.

Response

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

Powyższy przykład powinien spowodować wykonanie następujących czynności.

Zrzut ekranu przedstawiający niestandardową stronę cennika dla przykładowej oferty niezależnego dostawcy oprogramowania.