İş Ortağı Merkezi API'lerini kullanarak Microsoft Müşteri Sözleşmesi müşteri kabulü onaylayın

Şunlar için geçerlidir: İş Ortağı Merkezi

Geçerli değildir: 21Vianet tarafından işletilen İş Ortağı Merkezi | ABD Kamu için Microsoft Bulut İş Ortağı Merkezi

İş Ortağı Merkezi şu anda yalnızca Microsoft genel bulutunda Microsoft Müşteri Sözleşmesi müşteri kabulünün onaylanmasını desteklemektedir.

Bu makalede, Microsoft Müşteri Sözleşmesi müşteri kabulünü onaylama veya yeniden onaylama işlemleri açıklanmaktadır.

Ön koşullar

  • İş Ortağı Merkezi .NET SDK'sını kullanıyorsanız, sürüm 1.14 veya üzeri gereklidir.

Önemli

Haziran 2023 itibarıyla en son İş Ortağı Merkezi .NET SDK sürümü 3.4.0 arşivlenmiştir. SDK sürümünü, yararlı bilgiler içeren bir benioku dosyasıyla birlikte GitHub'dan indirebilirsiniz.

İş ortaklarının İş Ortağı Merkezi REST API'lerini kullanmaya devam etmesi teşvik edilir.

  • İş Ortağı Merkezi kimlik doğrulamasında açıklandığı gibi kimlik bilgileri. Bu senaryo yalnızca Uygulama+Kullanıcı kimlik doğrulamayı destekler.

  • Müşteri kimliği (customer-tenant-id). Müşterinin kimliğini bilmiyorsanız, İş Ortağı Merkezi'nde Müşteriler çalışma alanını, ardından müşteri listesinden müşteriyi ve ardından Hesap'ı seçerek bunu arayabilirsiniz. Müşterinin Hesap sayfasında, Müşteri Hesabı Bilgileri bölümünde Microsoft Kimliği'ni arayın. Microsoft Kimliği, müşteri kimliğiyle (customer-tenant-id) aynıdır.

  • Müşterinin Microsoft Müşteri Sözleşmesi kabul etme tarihi (dateAgreed).

  • Microsoft Müşteri Sözleşmesi kabul eden müşteri kuruluşundan kullanıcı hakkındaki bilgiler. Buna aşağıdakiler dahildir:

    • Ad
    • Soyadı
    • E-posta adresi
    • Telefon numarası (isteğe bağlı)
  • Bir müşteri için aşağıdaki değerler değişirse, İş Ortağı Merkezi bu müşteri için başka bir sözleşme oluşturulmasına izin verir: Ad Soyadı E-posta adresi Telefon numarası Aksi takdirde, yinelenen bir müşteri oluşturulduğu için iş ortakları aşağıdaki hata kodunu alır

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

Microsoft Müşteri Sözleşmesi müşteri kabulünü onaylamak veya yeniden onaylamak için:

  1. Microsoft Müşteri Sözleşmesi için sözleşme meta verilerini alın. Microsoft Müşteri Sözleşmesi templateId değerini almanız gerekir. Daha fazla bilgi için bkz. Microsoft Müşteri Sözleşmesi için sözleşme meta verilerini alma.

    // IAggregatePartner partnerOperations;
    
    string agreementType = "MicrosoftCustomerAgreement";
    
    var microsoftCustomerAgreementDetails = partnerOperations.AgreementDetails.ByAgreementType(agreementType).Get().Items.Single();
    
  2. Onayın ayrıntılarını içeren yeni bir Sözleşme nesnesi oluşturun.

  3. IAgreggatePartner.Customers koleksiyonunu kullanın ve belirtilen customer-tenant-id ile ById yöntemini çağırın.

  4. Sözleşmeler özelliğini kullanın ve ardından Create veya CreateAsync'i çağırın.

    // 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);
    

CreateCustomerAgreement sınıfında konsol testi uygulaması projesinden eksiksiz bir örnek bulunabilir.

REST isteği

Microsoft Müşteri Sözleşmesi müşteri kabulünü onaylamak veya yeniden onaylamak için:

  1. Microsoft Müşteri Sözleşmesi için sözleşme meta verilerini alın. Microsoft Müşteri Sözleşmesi templateId değerini almanız gerekir. Daha fazla bilgi için bkz. Microsoft Müşteri Sözleşmesi için sözleşme meta verilerini alma.
  2. Müşterinin Microsoft Müşteri Sözleşmesi kabul ettiğini onaylamak için yeni bir Sözleşme kaynağı oluşturun. Aşağıdaki REST isteği söz dizimini kullanın.

İstek söz dizimi

Yöntem İstek URI'si
POST {baseURL}/v1/customers/{customer-tenant-id}/agreements HTTP/1.1

URI parametresi

Onayladığınız müşteriyi belirtmek için aşağıdaki sorgu parametresini kullanın.

Ad Tür Zorunlu Tanım
customer-tenant-id GUID Evet Değer, müşteri belirtmenize olanak tanıyan bir tanımlayıcı olan GUID biçimli customer-tenant-id değeridir.

İstek üst bilgileri

Daha fazla bilgi için bkz . İş Ortağı Merkezi REST üst bilgileri.

Request body

Bu tabloda REST isteği gövdesindeki gerekli özellikler açıklanmaktadır.

Ad Tür Tanım
Sözleşme nesne Microsoft Müşteri Sözleşmesi müşteri kabulü onaylamak için iş ortağı tarafından sağlanan ayrıntılar.

Sözleşme

Bu tabloda, Bir Sözleşme kaynağı oluşturmak için gereken en düşük alanlar açıklanmaktadır.

Özellik Tür Tanım
primaryContact İlgili Kişi müşteri kuruluşundan Microsoft Müşteri Sözleşmesi kabul eden kullanıcı hakkında bilgiler: firstName, lastName, email ve phoneNumber (isteğe bağlı)
dateAgreed UTC tarih saat biçiminde dize Müşterinin sözleşmeyi kabul etme tarihi.
templateId Dize Müşteri tarafından kabul edilen sözleşme türünün benzersiz tanımlayıcısı. Microsoft Müşteri Sözleşmesi için sözleşme meta verilerini alarak Microsoft Müşteri Sözleşmesi için templateId değerini alabilirsiniz. Ayrıntılar için bkz. Microsoft Müşteri Sözleşmesi için sözleşme meta verilerini alma.
tür Dize Müşteri tarafından kabul edilen sözleşme türü. Müşteri Microsoft Müşteri Sözleşmesi kabul ettiyse "MicrosoftCustomerAgreement" kullanın.

İstek örneği

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": "117a77b0-9360-443b-8795-c6dedc750cf9",
    "dateAgreed": "2018-06-14T00:00:00.000Z",
    "type": "MicrosoftCustomerAgreement"
}

REST yanıtı

Başarılı olursa, bu yöntem bir Sözleşme kaynağı döndürür.

Yanıt başarısı ve hata kodları

Her yanıt, başarılı veya başarısız olduğunu belirten bir HTTP durum kodu ve ek hata ayıklama bilgileriyle birlikte gelir.

Bu kodu, hata türünü ve ek parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz . İş Ortağı Merkezi REST hata kodları.

Yanıt örneği

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": "117a77b0-9360-443b-8795-c6dedc750cf9",
    "dateAgreed": "2018-06-14T00:00:00.000Z",
    "type": "MicrosoftCustomerAgreement"
}