Creare un cliente per un rivenditore indiretto usando le API del Centro per i partner
Si applica a: Centro per i partner
Un provider indiretto può creare un cliente per un rivenditore indiretto.
Prerequisiti
Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione solo con le credenziali app + utente.
Identificatore del tenant del rivenditore indiretto.
Il rivenditore indiretto deve avere una partnership con il provider indiretto.
C#
Per aggiungere un nuovo cliente per un rivenditore indiretto:
Creare un'istanza di un nuovo oggetto Customer e quindi creare un'istanza e popolare BillingProfile e CompanyProfile. Assicurarsi di assegnare l'ID rivenditore indiretto alla proprietà AssociatedPartnerID.
Utilizzare la proprietà IAggregatePartner.Customers per ottenere un'interfaccia per le operazioni di raccolta dei clienti.
Chiamare il metodo Create o CreateAsync per creare il cliente.
Esempio in C#
// IAggregatePartner partnerOperations;
// var indirectResellerId;
var customerToCreate = new Customer()
{
CompanyProfile = new CustomerCompanyProfile()
{
Domain = string.Format(CultureInfo.InvariantCulture,
"WingtipToys{0}.{1}",
new Random().Next(),
this.Context.Configuration.Scenario.CustomerDomainSuffix)
},
BillingProfile = new CustomerBillingProfile()
{
Culture = "EN-US",
Email = "Gena@wingtiptoys.com",
Language = "En",
CompanyName = "Wingtip Toys",
DefaultAddress = new Address()
{
FirstName = "Gena",
LastName = "Soto",
AddressLine1 = "One Microsoft Way",
City = "Redmond",
State = "WA",
Country = "US",
PostalCode = "98052",
PhoneNumber = "4255550101"
}
},
AssociatedPartnerId = indirectResellerId
};
var newCustomer = partnerOperations.Customers.Create(customerToCreate);
Esempio: App di test della console. Project: Partner Center SDK Samples Class: CreateCustomerforIndirectReseller.cs
Richiesta REST
Sintassi della richiesta
metodo | URI della richiesta |
---|---|
POST | {baseURL}/v1/customers HTTP/1.1 |
Intestazioni delle richieste
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 | Digita | Obbligatorio | Descrizione |
---|---|---|---|
BillingProfile | oggetto | Sì | Informazioni sul profilo di fatturazione del cliente. |
CompanyProfile | oggetto | Sì | Informazioni sul profilo della società del cliente. |
AssociatedPartnerId | string | Sì | ID rivenditore indiretto. Il rivenditore indiretto come indicato dall'ID fornito qui deve avere una relazione con il provider indiretto o la richiesta avrà esito negativo. Si noti anche che se il valore AssociatedPartnerId non viene fornito, il cliente viene creato come cliente diretto del provider indiretto anziché come rivenditore indiretto. |
Domain | Stringa | Sì | Nome di dominio del cliente, ad esempio contoso.onmicrosoft.com. |
organizationRegistrationNumber | string | Sì | Numero di registrazione dell'organizzazione del cliente (detto anche numero INN in determinati paesi/aree geografiche). Obbligatorio 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), India, Brasile, Sudafrica, Polonia, Emirati Arabi Uniti, Arabia Saudita, Türkiye, Thailandia, Vietnam, Myanmar, Iraq, Sud Sudan e Venezuela. Per la società o l'organizzazione del cliente che si trova in altri paesi/aree geografiche, si tratta di un campo facoltativo. |
Profilo di fatturazione
Questa tabella descrive i campi minimi obbligatori della risorsa CustomerBillingProfile necessaria per creare un nuovo cliente.
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
posta elettronica | string | Sì | Indirizzo e-mail del cliente. |
Impostazioni cultura | string | Sì | 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 | Sì | Lingua predefinita. Sono supportati due codici di lingua dei caratteri ( ad esempio en o fr ). |
company_name | string | Sì | Nome della società o dell'organizzazione registrato. |
default_address | Indirizzo | Sì | 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 | Digita | Obbligatorio | Descrizione |
---|---|---|---|
dominio | string | Sì | Nome di dominio del cliente, ad esempio contoso.onmicrosoft.com. |
organizationRegistrationNumber | string | Dipende dalla condizione | Numero di registrazione dell'organizzazione del cliente (detto anche numero INN in determinati paesi/aree geografiche). Il completamento di questo campo è obbligatorio solo se la società o l'organizzazione di un cliente si trova nei paesi/aree geografiche seguenti: - Armenia (AM) - Azerbaigian (AZ) - Bielorussia (BY) - Ungheria (HU) - Kazakistan (KZ) - Kirghizistan (KG) - Moldova (MD) - Russia (UR) - Tagikistan (TJ) - Uzbekistan (UZ) - Ucraina (UA) -India -Brasile -Sud Africa -Polonia - Emirati Arabi Uniti -Arabia Saudita -Türkiye -Thailandia -Vietnam -Myanmar -Iraq - Sudan meridionale -Venezuela - 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>
MS-RequestId: d628adbe-b7ee-412e-ac55-58f22b4ba2f4
MS-CorrelationId: 0dd197a8-992c-44ca-aeae-21cd83494dce
X-Locale: en-US
MS-PartnerCenter-Client: Partner Center .NET SDK
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 823
Expect: 100-continue
Connection: Keep-Alive
{
"enableGDAPByDefault": false,
"Id": null,
"CommerceId": null,
"CompanyProfile": {
"TenantId": null,
"Domain": "WingtipToys678152504.onmicrosoft.com",
"CompanyName": null,
"Attributes": {
"ObjectType": "CustomerCompanyProfile"
}
},
"BillingProfile": {
"Id": null,
"FirstName": null,
"LastName": null,
"Email": "Gena@wingtiptoys.com",
"Culture": "EN-US",
"Language": "En",
"CompanyName": "Wingtip Toys",
"DefaultAddress": {
"Country": "US",
"Region": null,
"City": "Redmond",
"State": "WA",
"AddressLine1": "One Microsoft Way",
"AddressLine2": null,
"PostalCode": "98052",
"FirstName": "Gena",
"LastName": "Soto",
"PhoneNumber": "4255550101"
},
"Attributes": {
"ObjectType": "CustomerBillingProfile"
}
},
"RelationshipToPartner": "none",
"AllowDelegatedAccess": null,
"UserCredentials": null,
"CustomDomains": null,
"AssociatedPartnerId": "484e548c-f5f3-4528-93a9-c16c6373cb59",
"Attributes": {
"ObjectType": "Customer"
}
}
Importante
A partire da giugno 2023, la versione più recente di .NET SDK del Centro per i partner 3.4.0 è ora archiviata. È possibile scaricare la versione dell'SDK da GitHub, insieme a un file leggimi che contiene informazioni utili.
I partner sono invitati a continuare a usare le API REST del Centro per i partner.
Risposta REST
In caso di esito positivo, la risposta contiene una risorsa Customer per il nuovo cliente.
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: 1085
Content-Type: application/json; charset=utf-8
MS-CorrelationId: 0dd197a8-992c-44ca-aeae-21cd83494dce
MS-RequestId: d628adbe-b7ee-412e-ac55-58f22b4ba2f4
MS-CV: Yy/YaA0gYEmfQyR/.0
MS-ServerId: 030020525
Date: Tue, 06 Jun 2017 23:11:40 GMT
{
"enableGDAPByDefault": false,
"id": "626099fe-17af-4756-9fd0-6a73b7127859",
"commerceId": "626099fe-17af-4756-9fd0-6a73b7127859",
"companyProfile": {
"tenantId": "626099fe-17af-4756-9fd0-6a73b7127859",
"domain": "WingtipToys678152504.onmicrosoft.com",
"companyName": "Wingtip Toys",
"links": {
"self": {
"uri": "/customers/626099fe-17af-4756-9fd0-6a73b7127859/profiles/company",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "CustomerCompanyProfile"
}
},
"billingProfile": {
"id": "7079246e-7b62-56ef-7cbd-a819514b54b5",
"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": "4255550101"
},
"attributes": {
"etag": "-8799889149591823008",
"objectType": "CustomerBillingProfile"
}
},
"relationshipToPartner": "reseller",
"allowDelegatedAccess": true,
"userCredentials": {
"userName": "admin",
"password": "0Krha*Io"
},
"associatedPartnerId": "484e548c-f5f3-4528-93a9-c16c6373cb59",
"attributes": {
"objectType": "Customer"
}
}