Iş Ortağı Merkezi API 'Leri kullanarak bir müşteri oluşturma

Uygulama hedefi: Iş Ortağı Merkezi | 21Vianet tarafından işletilen iş ortağı Merkezi | Microsoft Cloud for US Government için iş ortağı Merkezi

Bu makalede, yeni bir müşterinin nasıl oluşturulacağı açıklanmaktadır.

Önemli

Dolaylı bir Sağlayıcıysanız ve dolaylı bir satıcı için bir müşteri oluşturmak istiyorsanız, lütfen dolaylı bir satıcı için müşteri oluşturmakonusuna bakın.

Bir bulut çözümü sağlayıcısı (CSP) iş ortağı olarak, bir müşteri oluşturduğunuzda müşteri adına sipariş yerleştirebilirsiniz. Bir müşteri oluşturduğunuzda şunları da oluşturursunuz:

  • müşteri için bir Azure Active Directory (AD) kiracı nesnesi.

  • Temsil edilen yönetici ayrıcalıkları için kullanılan satıcı ve müşteri arasındaki ilişki.

  • Müşteri için yönetici olarak oturum açmak için Kullanıcı adı ve parola.

Müşteri oluşturulduktan sonra, Iş Ortağı Merkezi SDK ile daha sonra kullanılmak üzere müşteri KIMLIĞI ve Azure AD ayrıntılarını kaydettiğinizden emin olun (örneğin, hesap yönetimi).

Önkoşullar

Önemli

Bir müşteri kiracısı oluşturmak için oluşturma işlemi sırasında geçerli bir fiziksel adres sağlamanız gerekir. Adres doğrulama senaryosunda özetlenen adımları izleyerek bir adres doğrulanabilir. Korumalı alan ortamında geçersiz bir adres kullanarak bir müşteri oluşturursanız, bu müşteri kiracısını silemezsiniz.

C#

Müşteri eklemek için:

  1. Yeni bir Müşteri nesnesi örneği oluşturun. Billingprofile ve companyprofile' i doldurduğunuzdan emin olun.

  2. Create veya createasyncçağırarak, yeni müşteriyi ıaggregatepartner. Customers koleksiyonuna ekleyin.

C# örneği

// IAggregatePartner partnerOperations;

var partnerOperations = this.Context.UserPartnerOperations;

var customerToCreate = new Customer()
{
    CompanyProfile = new CustomerCompanyProfile()
    {
        Domain = string.Format(CultureInfo.InvariantCulture,
            "SampleApplication{0}.{1}",
            new Random().Next(),
            this.Context.Configuration.Scenario.CustomerDomainSuffix),
        //// OrganizationRegistrationNumber = "123456" // Please add if in specific country that requires
    },
    BillingProfile = new CustomerBillingProfile()
    {
        Culture = "EN-US",
        Email = "someone@example.com",
        Language = "En",
        CompanyName = "Some Company" + new Random().Next(),
        DefaultAddress = new Address()
        {
            FirstName = "Tania",
            MiddleName = "MiddleName",
            LastName = "Carr",
            AddressLine1 = "One Microsoft Way",
            City = "Redmond",
            State = "WA",
            Country = "US",
            PostalCode = "98052",
            PhoneNumber = ""
        }
    }
};

var newCustomer = partnerOperations.Customers.Create(customerToCreate);

Örnek: konsol test uygulaması. Project: iş ortağı merkezi SDK örnekleri sınıfı: createcustomer. cs

Java

İş Ortağı Merkezi Java SDK 'sı genellikle iş ortakları tarafından Iş Ortağı Merkezi kaynaklarını yönetmek için kullanılır. Bu, iş ortağı topluluğu tarafından tutulan açık kaynaklı bir projem. Bu modül iş ortağı topluluğu tarafından korunduğundan, Microsoft tarafından resmi olarak desteklenmez. bir sorunla karşılaşırsanız, topluluktan yardım alabilir veya GitHub bir sorun açabilirsiniz .

Yeni bir müşteri oluşturmak için:

  1. Customerbillingprofile ve customercompanyprofile nesnelerinin yeni bir örneğini oluşturun. Gerekli alanları doldurduğunuzdan emin olun.

  2. Iaggregatepartner. getCustomers (). Create işlevini çağırarak müşteriyi oluşturun.

Java örneği

// IAggregatePartner partnerOperations;

Address address = new Address();

address.setFirstName( "Gena" );
address.setLastName( "Soto" );
address.setAddressLine1( "One Microsoft Way" );
address.setCity( "Redmond" );
address.setState( "WA" );
address.setCountry( "US" );
address.setPostalCode( "98052" );
address.setPhoneNumber( "4255550101" );

CustomerBillingProfile billingProfile = new CustomerBillingProfile();

billingProfile.setCulture( "en-US" );
billingProfile.setEmail( "gena@wingtiptoys.com" );
billingProfile.setLanguage( "en" );
billingProfile.setCompanyName( "Wingtip Toys" + new Random().nextInt() );
billingProfile.setDefaultAddress( address );

CustomerCompanyProfile companyProfile = new CustomerCompanyProfile();

companyProfile.setDomain( "WingtipToys" + Math.abs( new Random().nextInt() ) + ".onmicrosoft.com" );

Customer customerToCreate = new Customer();

customerToCreate.setBillingProfile( billingProfile );
customerToCreate.setCompanyProfile( companyProfile );

Customer newCustomer = partnerOperations.getCustomers().create( customerToCreate );

PowerShell

İş Ortağı Merkezi PowerShell modülü , iş ortakları tarafından yaygın olarak Iş Ortağı Merkezi kaynaklarını yönetmek için kullanılır. Bu, iş ortağı topluluğu tarafından tutulan açık kaynaklı bir projem. Bu modül iş ortağı topluluğu tarafından korunduğundan, Microsoft tarafından resmi olarak desteklenmez. bir sorunla karşılaşırsanız, topluluktan yardım alabilir veya GitHub bir sorun açabilirsiniz .

Bir müşteri oluşturmak için, New-partnercustomer komutunu yürütün.

New-PartnerCustomer -BillingAddressLine1 '1 Microsoft Way' -BillingAddressCity 'Redmond' -BillingAddressCountry 'US' -BillingAddressPostalCode '98052' -BillingAddressState 'WA' -ContactEmail 'jdoe@customer.com' -ContactFirstName 'Jane' -ContactLastName 'Doe' -Culture 'en-US' -Domain 'newcustomer.onmicrosoft.com' -Language 'en' -Name 'New Customer'

REST isteği

İstek sözdizimi

Yöntem İstek URI'si
YAYINLA {BaseUrl}/v1/Customers http/1.1

İstek üst bilgileri

  • Bu API, ıdempotent (birden çok kez çağırırsanız farklı bir sonuç vermez).

  • İstek KIMLIĞI ve bağıntı KIMLIĞI gereklidir.

  • Daha fazla bilgi için bkz. Iş ortağı MERKEZI Rest üstbilgileri.

İstek gövdesi

Bu tabloda, istek gövdesinde gereken özellikler açıklanmaktadır.

Ad Tür Description
BillingProfile object Müşterinin Faturalandırma profili bilgileri.
CompanyProfile object Müşterinin şirket profili bilgileri.

Faturalama profili

Bu tabloda, yeni bir müşteri oluşturmak için gereken Customerbillingprofile kaynağından gereken en düşük alan açıklanmaktadır.

Ad Tür Description
e-posta string Müşterinin e-posta adresi.
kültür string İletişim ve para birimi için tercih edilen kültür, "en-US" gibi. Desteklenen kültürler için Iş Ortağı Merkezi tarafından desteklenen dillere ve yerel ayarlara bakın.
language string Varsayılan dil. İki karakter dil kodu (örneğin en veya fr ) desteklenir.
company_name string Kayıtlı şirket/kuruluş adı.
default_address Adres Müşterinin şirketinin/kuruluşunun kayıtlı adresi. Herhangi bir uzunluk sınırlaması hakkında bilgi için bkz. Adres kaynağı.

Şirket profili

Bu tabloda, yeni bir müşteri oluşturmak için gereken Customercompanyprofile kaynağından gereken en düşük alan açıklanmaktadır.

Ad Tür Description
etki alanı string Müşterinin etki alanı adı, örneğin contoso.onmicrosoft.com.
organizationRegistrationNumber Dize Müşterinin kuruluş kayıt numarası (bazı ülkelerde ıNN numarası olarak da adlandırılır). Müşterinin yalnızca şu ülkelerde bulunan şirketi/kuruluşu için gereklidir: Arjantin(AM), Arjantin(AZ), Zaman(BY), Yerşek(HU), GZ), Kyrgyzstan(KG), Arjantin(MD), Rusya(RU), Tajikistan(TJ), Özbekistan(UZ), Arjantin(UA), Brezilya(BR), Hindistan, Güney Afrika, Afrika, Birleşik Krallık, Suudi Arabistan, Suudi Arabistan, Suudi Arabistan, Vietnam, Myanmar, Hindistan, Güney Sudan ve Sudan. Müşterinin başka ülkelerde bulunan şirketi/kuruluşu için bu isteğe bağlı bir alandır.

İstek örneği

POST https://api.partnercenter.microsoft.com/v1/customers HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CorrelationId: ab993325-1605-4cf4-bac4-fb584142a31b
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 789
Expect: 100-continue
Connection: Keep-Alive

{
    "CompanyProfile": {
        "Domain": "xyz.ccsctp.net",
    },
    "BillingProfile": {
        "Culture": "EN-US",
        "Email": "test@outlook.com",
        "Language": "en",
        "CompanyName": "test company",
        "DefaultAddress": {
            "FirstName": "Test",
            "LastName": "Test",
            "AddressLine1": "One Microsoft Way",
            "City": "Redmond",
            "State": "WA",
            "PostalCode": "98052",
            "Country": "US",
        }
    }
}

REST yanıtı

Başarılı olursa, bu API yeni müşteri için bir Müşteri kaynağı döndürür. Müşteri kimliğini ve Azure AD ayrıntılarını daha sonra kullanmak üzere İş Ortağı Merkezi SDK'sı. Örneğin hesap yönetimiyle birlikte kullanmak için bu hesaplara ihtiyacınız olacak.

Yanıt başarı ve hata kodları

Yanıtlar, başarılı veya başarısız olduğunu gösteren 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: 834
Content-Type: application/json; charset=utf-8
MS-CorrelationId: ab993325-1605-4cf4-bac4-fb584142a31b
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CV: ObwhuhD2tUKJoM+Z.0
MS-ServerId: 202010223
Date: Tue, 14 Feb 2017 20:06:02 GMT

{
    "id": "dfd8cc0a-c592-468c-8461-869a38d24738",
    "commerceId": "0a4ce58a-6f96-4273-8035-d9c7d31b9ba4",
    "companyProfile": {
        "tenantId": "dfd8cc0a-c592-468c-8461-869a38d24738",
        "domain": "xyz.ccsctp.net",
        "attributes": {
            "objectType": "CustomerCompanyProfile"
        }
    },
    "billingProfile": {
        "id": "d17c0275-da92-5c33-9032-782ef1d0b69b",
        "email": "test@outlook.com",
        "culture": "en-US",
        "language": "en",
        "companyName": "test company",
        "defaultAddress": {
            "country": "US",
            "city": "Redmond",
            "state": "WA",
            "addressLine1": "One Microsoft Way",
            "postalCode": "98052",
            "firstName": "Test",
            "lastName": "Test",
            "phoneNumber": ""
        },
        "attributes": {
            "etag": "5920358838484612121",
            "objectType": "CustomerBillingProfile"
        }
    },
    "relationshipToPartner": "none",
    "userCredentials": {
        "userName": "admin",
        "password": "=;;n.=s9Z"
    },
    "attributes": {
        "objectType": "Customer"
    }
}