Confirme a aceitação do cliente do Contrato de Cliente Microsoft usando APIs do Partner Center
Aplica-se a: Centro de Parceiros
Não se aplica a: Partner Center operado pela 21Vianet | Centro de Parceiros para Microsoft Cloud for US Government
O Partner Center suporta atualmente a confirmação da aceitação pelo cliente do Contrato de Cliente Microsoft apenas na nuvem pública da Microsoft.
Este artigo descreve como confirmar ou reconfirmar a aceitação do cliente do Contrato de Cliente Microsoft.
Pré-requisitos
Se estiver a utilizar o Partner Center .NET SDK, é necessária a versão 1.14 ou mais recente.
Credenciais descritas na autenticação do Partner Center. Este cenário suporta apenas a autenticação App+User.
Uma ID do cliente (
customer-tenant-id). Se não souber a identificação do cliente, pode procurar no painel do Centro de Parceiros. Selecione CSP no menu Partner Center, seguido por Clientes. Selecione o cliente da lista de clientes e, em seguida, selecione Conta. Na página conta do cliente, procure o ID da Microsoft na secção Informação da Conta do Cliente . O ID da Microsoft é o mesmo que o ID do cliente (customer-tenant-id).A data (data Acordada) quando o cliente aceitou o Contrato de Cliente Microsoft.
Informação sobre o utilizador da organização do cliente que aceitou o Contrato de Cliente Microsoft. O que está incluído:
- Nome próprio
- Apelido
- Endereço de e-mail
- Número de telefone (opcional)
Se os valores seguintes mudarem para um cliente, o Partner Center permitirá a criação de outro acordo para esse cliente: Endereço de endereço de e-mail de nome de primeiro nome Número De outro modo, os parceiros receberão o seguinte código de erro, devido à criação de um cliente duplicado
{
"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
Para confirmar ou reconfirmar a aceitação do cliente do Contrato de Cliente Microsoft:
Recupere os metadados do acordo para o Contrato de Cliente Microsoft. Tem de obter o modeloId do Contrato de Cliente Microsoft. Para mais informações, consulte obter metadados de acordo para Contrato de Cliente Microsoft.
// IAggregatePartner partnerOperations; string agreementType = "MicrosoftCustomerAgreement"; var microsoftCustomerAgreementDetails = partnerOperations.AgreementDetails.ByAgreementType(agreementType).Get().Items.Single();Crie um novo objeto do Acordo que contenha detalhes da confirmação.
Utilize a coleção IAgreggatePartner.Customers e ligue para o método ById com o id específico cliente-inquilino.
Utilize a propriedade Agreements , seguida de chamar Create ou CreateAsync.
// 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);
Uma amostra completa pode ser encontrada na classe CreateCustomerAgreement do projeto de aplicações de teste de consola .
Pedido de DESCANSO
Para confirmar ou reconfirmar a aceitação do cliente do Contrato de Cliente Microsoft:
Recupere os metadados do acordo para o Contrato de Cliente Microsoft. Tem de obter o modeloId do Contrato de Cliente Microsoft. Para mais informações, consulte obter metadados de acordo para Contrato de Cliente Microsoft.
Crie um novo recurso do Acordo para confirmar que um cliente aceitou o Contrato de Cliente Microsoft. Utilize a seguinte sintaxe de pedido DEE.
Solicitar sintaxe
| Método | URI do pedido |
|---|---|
| POST | {baseURL}/v1/customers/{customer-tenant-id}/agreements HTTP/1.1 |
Parâmetro URI
Utilize o seguinte parâmetro de consulta para especificar o cliente que está a confirmar.
| Nome | Tipo | Necessário | Descrição |
|---|---|---|---|
| cliente-inquilino-id | GUID | Yes | O valor é um cliente-inquilino-id formatado pelo GUID, que é um identificador que lhe permite especificar um cliente. |
Cabeçalhos do pedido
Para obter mais informações, consulte os cabeçalhos Partner Center REST.
Corpo do pedido
Esta tabela descreve as propriedades necessárias no corpo de pedido REST.
| Nome | Tipo | Description |
|---|---|---|
| Contrato | objeto | Detalhes fornecidos pelo parceiro para confirmar a aceitação do cliente do Contrato de Cliente Microsoft. |
Contrato
Esta tabela descreve os campos mínimos necessários para criar um recurso do Acordo.
| Propriedade | Tipo | Description |
|---|---|---|
| principalContact | Contacto | Informações sobre o utilizador da organização do cliente que aceitou o Contrato de Cliente Microsoft, incluindo: primeiro Nome, último Nome, e-mail e telefoneNumber (opcional) |
| dataA acordado | cadeia no formato de hora de data UTC | A data em que o cliente aceitou o acordo. |
| templateId | string | Identificador único do tipo de contrato aceite pelo cliente. Pode obter o modeloId para Contrato de Cliente Microsoft recuperando os metadados do acordo para Contrato de Cliente Microsoft. Consulte os metadados do acordo para Contrato de Cliente Microsoft para obter mais informações. |
| tipo | string | Tipo de acordo aceite pelo cliente. Utilize "MicrosoftCustomerAgreement" se o cliente aceitar o Contrato de Cliente Microsoft. |
Exemplo de pedido
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"
}
Resposta do REST
Se for bem sucedido, este método devolve um recurso do Acordo.
Códigos de sucesso e erro de resposta
Cada resposta vem com um código de estado HTTP que indica sucesso ou falha e informações adicionais de depuragem.
Utilize uma ferramenta de rastreio de rede para ler este código, tipo de erro e parâmetros adicionais. Para obter a lista completa, consulte os códigos de erro do Partner Center REST.
Exemplo de resposta
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"
}