Dela via


Bekräfta kundens godkännande av Microsoft-kundavtal med hjälp av Api:er för Partnercenter

Gäller för: Partnercenter

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

Partnercenter stöder för närvarande bekräftelse av kundens godkännande av Microsoft-kundavtal endast i Microsofts offentliga moln.

Den här artikeln beskriver hur du bekräftar eller bekräftar kundens godkännande av Microsoft-kundavtal.

Förutsättningar

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

Viktigt!

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.

Partner uppmanas att fortsätta att använda REST-API:er för Partnercenter.

  • Autentiseringsuppgifter enligt beskrivningen i Partnercenter-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 söka efter 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 :t i avsnittet Kundkontoinformation . Microsoft-ID:t är samma som kund-ID :t (customer-tenant-id).

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

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

    • Förnamn
    • Efternamn
    • E-postadress
    • Telefon nummer (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 Telefon nummer 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"
}

.NET

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

  1. Hämta avtalsmetadata för Microsoft-kundavtal. Du måste hämta templateId för Microsoft-kundavtal. 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 avtalsobjekt som innehåller information om bekräftelsen.

  3. Använd samlingen IAgreggatePartner.Customers och anropa metoden ById med det angivna kundklient-ID:t.

  4. Använd egenskapen Avtal, följt av att anropa Skapa eller SkapaAsync.

    // 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 konsoltestappprojektet .

REST-begäran

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

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

  2. Skapa en ny avtalsresurs för att bekräfta att en kund har godkänt Microsoft-kundavtal. Använd följande REST-begärandesyntax.

Syntax för begäran

Metod URI för förfrågan
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 Type Obligatoriskt Beskrivning
customer-tenant-id GUID Ja 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

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

Namn Type Description
Avtal objekt Information som tillhandahålls av partner för att bekräfta kundens godkännande av Microsoft-kundavtal.

Avtal

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

Egenskap Type Description
primaryContact Kontakt Information om användaren från kundorganisationen som accepterade Microsoft-kundavtal, inklusive: firstName, lastName, email och phoneNumber (valfritt)
dateAgreed 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.
type sträng Avtalstyp som accepteras av kunden. Använd "MicrosoftCustomerAgreement" om kunden accepterade Microsoft-kundavtal.

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

REST-svar

Om det lyckas returnerar den här metoden en avtalsresurs.

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 Rest-felkoder för Partnercenter.

Svarsexempel

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