Creare un cliente
Si applica a: Centro per i partner | Centro per i partner gestito da 21Vianet | Centro per i partner per Microsoft Cloud per il governo degli Stati Uniti
In qualità di partner Cloud Solution Provider (CSP), quando si crea un cliente, è possibile effettuare ordini per conto del cliente. Quando si crea un cliente, si creano anche:
- Oggetto tenant di Microsoft Entra per il cliente
- Relazione tra il rivenditore e il cliente (usato per i privilegi di amministratore delegato)
- Nome utente e password per l'accesso come amministratore per il cliente
Dopo aver creato il cliente, salvare l'ID cliente e i dettagli dell'ID Microsoft Entra.
Importante
Se si è un provider indiretto e si vuole creare un cliente per un rivenditore indiretto, vedere Creare un cliente per un rivenditore indiretto.
Prerequisiti
- Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione con le credenziali app autonome e App+Utente.
Importante
Per creare un tenant del cliente, è necessario fornire un indirizzo fisico valido durante il processo di creazione. Un indirizzo può essere convalidato seguendo i passaggi descritti nello scenario Convalidare un indirizzo . Se si crea un cliente usando un indirizzo non valido nell'ambiente sandbox, non sarà possibile eliminare il tenant del cliente.
Importante
Se il passaggio della password userCredentials non è accettato.
C#
Per aggiungere un cliente:
Creare un'istanza di un nuovo oggetto Customer. Assicurarsi di compilare BillingProfile e CompanyProfile.
Aggiungere il nuovo cliente alla raccolta IAggregatePartner.Customers chiamando Create o CreateAsync.
Esempio in C#
// 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/region that requires
},
BillingProfile = new CustomerBillingProfile()
{
Culture = "EN-US",
Email = "gena@wingtiptoys.com",
Language = "En",
CompanyName = "Wingtip Toys"
DefaultAddress = new Address()
{
FirstName = "Gena",
MiddleName = "Coralie",
LastName = "Soto",
AddressLine1 = "One Microsoft Way",
City = "Redmond",
State = "WA",
Country = "US",
PostalCode = "98052",
PhoneNumber = ""
}
}
};
var newCustomer = partnerOperations.Customers.Create(customerToCreate);
App di esempio C#
- App di test della console. Project: Partner Center SDK Samples Class: CreateCustomer.cs
REST
Sintassi della richiesta
metodo | URI della richiesta |
---|---|
POST | {baseURL}/v1/customers HTTP/1.1 |
Intestazioni delle richieste
Questa API è idempotente (non produrrà un risultato diverso se viene chiamato più volte).
Sono necessari un ID richiesta e un ID di correlazione.
Per altre informazioni, vedi Intestazioni REST del Centro per i partner.
Testo della richiesta
Questa tabella descrive le proprietà necessarie nel corpo della richiesta.
Nome | Tipo | Descrizione |
---|---|---|
BillingProfile | oggetto | Informazioni sul profilo di fatturazione del cliente. |
CompanyProfile | oggetto | Informazioni sul profilo della società del cliente. |
Profilo di fatturazione
Questa tabella descrive i campi minimi obbligatori della risorsa CustomerBillingProfile necessaria per creare un nuovo cliente.
Nome | Tipo | Descrizione |
---|---|---|
posta elettronica | string | Indirizzo e-mail del cliente. |
Impostazioni cultura | string | Le impostazioni cultura preferite per la comunicazione e la valuta, ad esempio en-US . Vedere Lingue e impostazioni locali supportate dal Centro per i partner per le impostazioni cultura supportate. |
lingua | string | Lingua predefinita. Sono supportati due codici di lingua dei caratteri ( ad esempio en o fr ). |
companyName | string | Nome della società o dell'organizzazione registrato. |
defaultAddress | Indirizzo | Indirizzo registrato dell'azienda o dell'organizzazione del cliente. Per informazioni sulle limitazioni di lunghezza, vedere la risorsa Indirizzo . |
Profilo di società
Questa tabella descrive i campi minimi obbligatori della risorsa CustomerCompanyProfile necessaria per creare un nuovo cliente.
Nome | Tipo | Descrizione |
---|---|---|
dominio | string | Nome di dominio del cliente, ad esempio contoso.onmicrosoft.com. |
organizationRegistrationNumber | String | Numero di registrazione dell'organizzazione del cliente (detto anche numero INN in determinati paesi/aree geografiche). Richiesto solo per la società o l'organizzazione del cliente che si trova nei paesi/aree seguenti: Armenia(AM), Azerbaigian(AZ), Bielorussia(BY), Ungheria(HU), Kazakistan(KZ), Kirghizistan(KG), Moldova(MD), Russia(RU), Tagikistan(TJ), Uzbekistan(UZ), Ucraina(UA), Brasile(BR), India, Sudafrica, Polonia, Emirati Arabi Uniti, Arabia Saudita, Türkiye, Thailandia, Vietnam, Myanmar, Iraq, Sud Sudan, Venezuela e Cina. Per la società o l'organizzazione del cliente che si trova in altri paesi/aree geografiche, si tratta di un campo facoltativo. |
GDAP per impostazione predefinita
Nome | Tipo | Descrizione |
---|---|---|
enableGDAPByDefault | bool | Valore booleano per indicare se si vuole abilitare GDAP per impostazione predefinita. Se true creeremo GDAP per impostazione predefinita. Se false, non creeremo GDAP. Si noti che questo è rispettato solo nei cloud che supportano GDAP. Se non è supportato, per impostazione predefinita verrà creato DAP. |
Esempio di richiesta
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: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 789
Expect: 100-continue
Connection: Keep-Alive
{
"enableGDAPByDefault": false,
"CompanyProfile": {
"Domain": "xyz.onmicrosoft.com"
},
"BillingProfile": {
"Culture": "EN-US",
"Email": "gena@wingtiptoys.com",
"Language": "en",
"CompanyName": "Wingtip Toys",
"DefaultAddress": {
"FirstName": "Gena",
"LastName": "Soto",
"AddressLine1": "One Microsoft Way",
"City": "Redmond",
"State": "WA",
"PostalCode": "98052",
"Country": "US"
}
}
}
Risposta REST
In caso di esito positivo, questa API restituisce una risorsa Customer per il nuovo cliente. Salvare l'ID cliente e i dettagli dell'ID Entra di Microsoft per un uso futuro con l'SDK del Centro per i partner. Saranno necessari per l'uso con la gestione degli account, ad esempio.
Codici di errore e di esito della risposta
Le risposte vengono fornite con un codice di stato HTTP che indica l'esito positivo o negativo e informazioni di debug aggiuntive. Usa uno strumento di traccia di rete per leggere il codice, il tipo di errore e parametri aggiuntivi. Per l'elenco completo, vedi Codici di errore REST del Centro per i partner.
Risposta di esempio
HTTP/1.1 201 Created
Content-Length: 834
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
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": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"commerceId": "0a4ce58a-6f96-4273-8035-d9c7d31b9ba4",
"companyProfile": {
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"domain": "xyz.onmicrosoft.com",
"attributes": {
"objectType": "CustomerCompanyProfile"
}
},
"billingProfile": {
"id": "d17c0275-da92-5c33-9032-782ef1d0b69b",
"email": "gena@wingtiptoys.com",
"culture": "en-US",
"language": "en",
"companyName": "Wingtip Toys",
"defaultAddress": {
"country": "US",
"city": "Redmond",
"state": "WA",
"addressLine1": "One Microsoft Way",
"postalCode": "98052",
"firstName": "Gena",
"lastName": "Soto",
"phoneNumber": ""
},
"attributes": {
"etag": "5920358838484612121",
"objectType": "CustomerBillingProfile"
}
},
"enableGDAPByDefault": false,
"relationshipToPartner": "none",
"userCredentials": {
"userName": "admin",
"password": "=;;n.=s9Z"
},
"attributes": {
"objectType": "Customer"
}
}
Java
Nota
L'SDK del Centro per i partner per Java è un progetto open source gestito dalla community partner.
Usare la procedura seguente per creare un nuovo cliente.
- Creare una nuova istanza degli oggetti CustomerBillingProfile e CustomerCompanyProfile . Assicurarsi di popolare i campi obbligatori.
- Creare il cliente chiamando la funzione IAggregatePartner.getCustomers().create .
Esempio per Java
// 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" );
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
Nota
L'SDK del Centro per i partner per PowerShell è un progetto open source gestito dalla community partner.
Per creare un cliente, eseguire il comando New-PartnerCustomer come nell'esempio seguente.
New-PartnerCustomer -BillingAddressLine1 '1 Microsoft Way' -BillingAddressCity 'Redmond' -BillingAddressCountry 'US' -BillingAddressPostalCode '98052' -BillingAddressState 'WA' -ContactEmail 'gena@wingtiptoys.com' -ContactFirstName 'Gena' -ContactLastName 'Soto' -Culture 'en-US' -Domain 'newcustomer.onmicrosoft.com' -Language 'en' -Name 'New Customer'