Potwierdzanie akceptacji Umowa z Klientem Microsoft przy użyciu interfejsów API Centrum partnerskiego

Dotyczy: Centrum partnerskie

Nie dotyczy: Centrum partnerskie obsługiwane przez firmę 21Vianet | Centrum partnerskie dla chmury firmy Microsoft dla instytucji rządowych USA

Centrum partnerskie obsługuje obecnie potwierdzenie akceptacji przez klienta Umowa z Klientem Microsoft tylko w chmurze publicznej firmy Microsoft.

W tym artykule opisano sposób potwierdzania lub ponownego potwierdzania akceptacji Umowa z Klientem Microsoft przez klienta.

Wymagania wstępne

  • Jeśli używasz zestawu .NET SDK Centrum partnerskiego, wymagana jest wersja 1.14 lub nowsza.

Ważne

Od czerwca 2023 r. najnowsza wersja zestawu .NET SDK Centrum partnerskiego 3.4.0 jest teraz archiwizowana. Możesz pobrać wersję zestawu SDK z usługi GitHub wraz z plikiem readme zawierającym przydatne informacje.

Zachęcamy partnerów do dalszego korzystania z interfejsów API REST Centrum partnerskiego.

  • Poświadczenia zgodnie z opisem w temacie Uwierzytelnianie w Centrum partnerskim. Ten scenariusz obsługuje tylko uwierzytelnianie aplikacji i użytkowników.

  • Identyfikator klienta (customer-tenant-id). Jeśli nie znasz identyfikatora klienta, możesz wyszukać go w Centrum partnerskim, wybierając obszar roboczy Klienci , a następnie klienta z listy klienta, a następnie pozycję Konto. Na stronie Konto klienta poszukaj identyfikatora Microsoft w sekcji Informacje o koncie klienta. Identyfikator Microsoft jest taki sam jak identyfikator klienta (customer-tenant-id).

  • Data (dateAgreed), kiedy klient zaakceptował Umowa z Klientem Microsoft.

  • Informacje o użytkowniku z organizacji klienta, który zaakceptował Umowa z Klientem Microsoft. Obejmuje on:

    • Imię
    • Nazwisko
    • Adres e-mail
    • numer Telefon (opcjonalnie)
  • Jeśli następujące wartości zmienią się dla klienta, Centrum partnerskie zezwoli na utworzenie innej umowy dla tego klienta: adres e-mail imię i nazwisko Telefon numer w przeciwnym razie partnerzy otrzymają następujący kod błędu z powodu utworzenia zduplikowanego klienta

{
"code": 600061,
"message": "A partner confirmed agreement already exists for the customer.",
"description": "A partner confirmed agreement already exists for the customer.",
"errorName": "PartnerConfirmedAgreementAlreadyExists",
"isRetryable": false,
"parameters": {},
"errorMessageExtended": "InternalErrorCode=600061"
}

.NET

Aby potwierdzić lub ponownie potwierdzić akceptację Umowa z Klientem Microsoft przez klienta:

  1. Pobierz metadane umowy dla Umowa z Klientem Microsoft. Musisz uzyskać identyfikator templateId Umowa z Klientem Microsoft. Aby uzyskać więcej informacji, zobacz Pobieranie metadanych umowy dla Umowa z Klientem Microsoft.

    // IAggregatePartner partnerOperations;
    
    string agreementType = "MicrosoftCustomerAgreement";
    
    var microsoftCustomerAgreementDetails = partnerOperations.AgreementDetails.ByAgreementType(agreementType).Get().Items.Single();
    
  2. Utwórz nowy obiekt umowy zawierający szczegóły potwierdzenia.

  3. Użyj kolekcji IAgreggatePartner.Customers i wywołaj metodę ById z określonym identyfikatorem dzierżawy klienta.

  4. Użyj właściwości Agreement, a następnie wywołaj metodę Create lub CreateAsync.

    // string selectedCustomerId;
    
    var agreementToCreate = new Agreement
    {
        DateAgreed = DateTime.UtcNow,
        TemplateId = microsoftCustomerAgreementDetails.TemplateId,
        PrimaryContact = new Contact
        {
            FirstName = "Tania",
            LastName = "Carr",
            Email = "someone@example.com",
            PhoneNumber = "1234567890"
        }
    };
    
    Agreement agreement = partnerOperations.Customers.ById(selectedCustomerId).Agreements.Create(agreementToCreate);
    

Kompletny przykład można znaleźć w klasie CreateCustomerAgreement z projektu aplikacji testowej konsoli.

Żądanie REST

Aby potwierdzić lub ponownie potwierdzić akceptację Umowa z Klientem Microsoft przez klienta:

  1. Pobierz metadane umowy dla Umowa z Klientem Microsoft. Musisz uzyskać identyfikator templateId Umowa z Klientem Microsoft. Aby uzyskać więcej informacji, zobacz Pobieranie metadanych umowy dla Umowa z Klientem Microsoft.

  2. Utwórz nowy zasób Umowy, aby potwierdzić, że klient zaakceptował Umowa z Klientem Microsoft. Użyj następującej składni żądania REST.

Składnia żądania

Metoda Identyfikator URI żądania
POST {baseURL}/v1/customers/{customer-tenant-id}/agreement HTTP/1.1

Parametr identyfikatora URI

Użyj następującego parametru zapytania, aby określić klienta, którego potwierdzasz.

Imię i nazwisko/nazwa Pisz Wymagani opis
identyfikator dzierżawy klienta Identyfikator GUID Tak 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

W tej tabeli opisano wymagane właściwości w treści żądania REST.

Imię i nazwisko/nazwa Pisz Opis
Umowa obiekt Szczegóły podane przez partnera w celu potwierdzenia akceptacji Umowa z Klientem Microsoft przez klienta.

Umowa

W tej tabeli opisano minimalne wymagane pola do utworzenia zasobu umowy.

Właściwość Pisz Opis
primaryContact Kontakt biznesowy Informacje o użytkowniku organizacji klienta, który zaakceptował Umowa z Klientem Microsoft, w tym: firstName, lastName, email i phoneNumber (opcjonalnie)
dateAgreed ciąg w formacie daty i godziny UTC Data zaakceptowania umowy przez klienta.
templateId string Unikatowy identyfikator typu umowy zaakceptowanego przez klienta. Identyfikator templateId dla Umowa z Klientem Microsoft można uzyskać, pobierając metadane umowy dla Umowa z Klientem Microsoft. Aby uzyskać szczegółowe informacje, zobacz Pobieranie metadanych umowy dla Umowa z Klientem Microsoft.
type string Typ umowy zaakceptowany przez klienta. Użyj wartości "MicrosoftCustomerAgreement", jeśli klient zaakceptował Umowa z Klientem Microsoft.

Przykład żądania

POST https://api.partnercenter.microsoft.com/v1/customers/14876998-c0dc-46e6-9d0c-65a57a6c32ec/agreements HTTP/1.1
Authorization: Bearer <token>
Content-Type: application/json
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CorrelationId: ab993325-1605-4cf4-bac4-fb584142a31b
{
    "primaryContact": {
        "firstName": "Tania",
        "lastName": "Carr",
        "email": "someone@example.com",
        "phoneNumber": "1234567890"
    },
    "templateId": "117a77b0-9360-443b-8795-c6dedc750cf9",
    "dateAgreed": "2018-06-14T00:00:00.000Z",
    "type": "MicrosoftCustomerAgreement"
}

Odpowiedź REST

W przypadku powodzenia ta metoda zwraca zasób Umowy.

Kody powodzenia i błędów odpowiedzi

Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i dodatkowe informacje o debugowaniu.

Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i dodatkowe parametry. Aby uzyskać pełną listę, zobacz Kody błędów REST Centrum partnerskiego.

Przykład odpowiedzi

HTTP/1.1 201 Created
Content-Length: 261
Content-Type: application/json
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CorrelationId: ab993325-1605-4cf4-bac4-fb584142a31b
{
    "userId": "3d6f2c09-eb40-48ca-a4b3-d24c9c007531",
    "primaryContact": {
        "firstName": "Tania",
        "lastName": "Carr",
        "email": "someone@example.com",
        "phoneNumber": "1234567890"
    },
    "templateId": "117a77b0-9360-443b-8795-c6dedc750cf9",
    "dateAgreed": "2018-06-14T00:00:00.000Z",
    "type": "MicrosoftCustomerAgreement"
}