Dela via


Bekräfta kundens godkännande av Microsoft-kundavtalet med hjälp av Partnercenter-API:er

gäller för: Partnercenter

Gäller inte för: Partnercenter som drivs av 21Vianet | Partnercenter för Microsoft Cloud for US Government

Partnercenter har för närvarande stöd för bekräftelse av kundgodkännande av Microsoft-kundavtalet endast i Microsofts offentliga moln.

I den här artikeln beskrivs hur du bekräftar eller bekräftar kundens godkännande av Microsoft-kundavtalet.

Förutsättningar

  • Om du använder .NET SDK för Partnercenter krävs version 1.14 eller senare.

Viktig

Från och med juni 2023 arkiveras nu den senaste Partner Center .NET SDK-versionen 3.4.0. Du kan ladda ned SDK-versionen från GitHub, tillsammans med en readme-fil som innehåller användbar information.

Partners uppmanas att fortsätta att använda Partnercenter REST-API:erna.

  • Autentiseringsuppgifter enligt beskrivningen i Partner Center-autentisering. Det här scenariot stöder endast App+User-autentisering.

  • Ett kund-ID (customer-tenant-id). Om du inte känner till kundens ID kan du leta upp det i Partnercenter genom att välja arbetsytan Kunder, sedan kunden från kundlistan och sedan konto. På kundens kontosida letar du efter Microsoft-ID i avsnittet Kundkontoinformation. Microsoft-ID:t är detsamma som kund-ID :t (customer-tenant-id).

  • Datumet (dateAgreed) när kunden accepterade Microsoft-kundavtalet.

  • Information om användaren från den kundorganisation som accepterade Microsoft-kundavtalet. Detta inkluderar:

    • Förnamn
    • Efternamn
    • E-postadress
    • Telefonnummer (valfritt)
  • Om följande värden ändras för en kund tillåter Partnercenter att ett annat avtal skapas för kunden: Förnamn Efternamn e-postadress Telefonnummer Annars får partner följande felkod på grund av att en duplicerad kund skapas

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

.NÄT

Bekräfta eller bekräfta kundens godkännande av Microsoft-kundavtalet:

  1. Hämta avtalsmetadata för Microsoft-kundavtalet. Du måste hämta templateId från Microsoft-kundavtalet. Mer information finns i Hämta avtalsmetadata för Microsoft-kundavtal.

    // IAggregatePartner partnerOperations;
    
    string agreementType = "MicrosoftCustomerAgreement";
    
    var microsoftCustomerAgreementDetails = partnerOperations.AgreementDetails.ByAgreementType(agreementType).Get().Items.Single();
    
  2. Skapa ett nytt -avtal objekt som innehåller information om bekräftelsen.

  3. Använd IAggregatePartner.Customers-samlingen och anropa metoden ById med det angivna customer-tenant-id.

  4. Använd egenskapen Agreements följt av att anropa Skapa eller 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);
    

Ett fullständigt exempel finns i klassen CreateCustomerAgreement från -konsolens testapp projektet.

REST-begäran

Bekräfta eller bekräfta kundens godkännande av Microsoft-kundavtalet:

  1. Hämta avtalsmetadata för Microsoft-kundavtalet. Du måste hämta templateId från Microsoft-kundavtalet. Mer information finns i Hämta avtalsmetadata för Microsoft-kundavtal.
  2. Skapa ett nytt -avtal resurs för att bekräfta att en kund har godkänt Microsoft-kundavtalet. Använd följande REST-begärandesyntax.

Syntax för förfrågan

Metod Begär URI
POST {baseURL}/v1/customers/{customer-tenant-id}/agreements HTTP/1.1

URI-parameter

Använd följande frågeparameter för att ange den kund som du bekräftar.

Namn Typ Krävs Beskrivning
kund-hyresgäst-id GUID Ja Värdet är en GUID-formaterad customer-tenant-id, som är en identifierare som gör att du kan ange en kund.

Begäranrubriker

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

Begärandeinnehåll

Den här tabellen beskriver de nödvändiga egenskaperna i REST-begärandetexten.

Namn Typ Beskrivning
Överenskommelse objekt Information som tillhandahålls av partner för att bekräfta kundens godkännande av Microsoft-kundavtalet.

Överenskommelse

I den här tabellen beskrivs de minsta obligatoriska fälten för att skapa en avtalsresurs.

Egenskap Typ Beskrivning
huvudkontaktperson Kontakt Information om användaren från kundorganisationen som accepterade Microsoft-kundavtalet, inklusive: firstName, lastName, e-postoch phoneNumber (valfritt)
överenskommet datum sträng i UTC-datumtidsformat Det datum då kunden accepterade avtalet.
templateId sträng Unik identifierare för den avtalstyp som accepteras av kunden. Du kan hämta templateId för Microsoft-kundavtal genom att hämta avtalsmetadata för Microsoft-kundavtal. Mer information finns i Hämta avtalsmetadata för Microsoft-kundavtal.
typ sträng Avtalstyp som accepteras av kunden. Använd "MicrosoftCustomerAgreement" om kunden accepterade Microsoft-kundavtalet.

Exempel på begäran

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: aaaa0000-bb11-2222-33cc-444444dddddd
{
    "primaryContact": {
        "firstName": "Tania",
        "lastName": "Carr",
        "email": "someone@example.com",
        "phoneNumber": "1234567890"
    },
    "templateId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
    "dateAgreed": "2018-06-14T00:00:00.000Z",
    "type": "MicrosoftCustomerAgreement"
}

REST-svar

Om det lyckas returnerar den här metoden en Agreement-resurs.

Svarsframgång och felkoder

Varje svar levereras med en HTTP-statuskod som anger lyckad eller misslyckad och ytterligare felsökningsinformation.

Använd ett verktyg för nätverksspårning för att läsa den här koden, feltypen och ytterligare parametrar. Den fullständiga listan finns i Partnercenters REST-felkoder.

Svarsexempel

HTTP/1.1 201 Created
Content-Length: 261
Content-Type: application/json
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
{
    "userId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
    "primaryContact": {
        "firstName": "Tania",
        "lastName": "Carr",
        "email": "someone@example.com",
        "phoneNumber": "1234567890"
    },
    "templateId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
    "dateAgreed": "2018-06-14T00:00:00.000Z",
    "type": "MicrosoftCustomerAgreement"
}