Обновление квалификации клиента асинхронно

Обновления квалификации клиента асинхронно.

Партнер может асинхронно обновить квалификацию клиента, чтобы быть "Education", "GovernmentCommunityCloud" или StateOwnedEntity. Другие значения, такие как "Нет" и "Некоммерческая организация", не могут быть заданы.

Необходимые компоненты

  • Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает только проверку подлинности с использованием учетных данных приложений и пользователей.

  • Идентификатор клиента (customer-tenant-id). Если вы не знаете идентификатор клиента, его можно найти в Центре партнеров, выбрав рабочую область "Клиенты" , затем клиент из списка клиентов, а затем учетная запись. На странице "Учетная запись клиента" найдите идентификатор Майкрософт в разделе "Сведения о учетной записи клиента". Идентификатор Майкрософт совпадает с идентификатором клиента (customer-tenant-id).

  • Только для квалификации сообщества государственных организаций (GCC): вам потребуется по крайней мере одна из следующих подробных делегированных ролей администратора (GDAP). Дополнительные сведения о GDAP см. в статьях MS Learn, начиная с руководства по GDAP.

    • Читатель каталога
    • Редактор каталогов
    • Администратор лицензий
    • Администратор пользователей

C#

Чтобы создать квалификацию клиента для "Образования", сначала создайте CustomerQualificationRequest объект типа и укажите Education тип квалификации и EducationSegmentWebsite (необязательно).

Затем вызовите метод IAggregatePartner.Customers.ById с идентификатором клиента.

Затем используйте свойство Qualification для получения интерфейса ICustomerQualification.

Наконец, вызов или CreateQualificationsAsync()CustomerQualificationRequest объект CreateQualifications() типа в качестве входного параметра.

// Education
var eduRequestBody = new CustomerQualificationRequest 
{
    Qualification = "Education",
    EducationSegment = "K12", // could also be "HigherEducation"
    Website = "example.edu"
};

var eduCustomerQualification = partnerOperations.Customers.ById(existingCustomer.Id).Qualification.CreateQualifications(eduRequestBody);

// State Owned Entity
var soeRequestBody = new CustomerQualificationRequest 
{
    Qualification = "StateOwnedEntity"
};

var soeCustomerQualification = partnerOperations.Customers.ById(existingCustomer.Id).Qualification.CreateQualifications(soeRequestBody);

Пример: пример консольного приложения. Проект: класс SdkSamples: CreateCustomerQualification.cs

Чтобы обновить квалификацию клиента до GovernmentCommunityCloud на существующем клиенте без квалификации, партнер также должен включить код проверки клиента.

Сначала создайте CustomerQualificationRequest объект типа и укажите GovernmentCommunityCloud тип квалификации и код проверки.

Затем вызовите метод IAggregatePartner.Customers.ById с идентификатором клиента.

Затем используйте свойство Qualification для получения интерфейса ICustomerQualification.

Наконец, вызов или CreateQualificationsAsync()CustomerQualificationRequest объект CreateQualifications() типа в качестве входного параметра.

var gccRequestBody = new CustomerQualificationRequest 
{
    Qualification = "GovernmentCommunityCloud",
    ValidationCode = "<validation code>"
};

var gccCustomerQualification = partnerOperations.Customers.ById(existingCustomer.Id).Qualification.CreateQualifications(gccRequestBody);

Пример: пример консольного приложения. Проект: класс SdkSamples: CreateCustomerQualificationWithGCC.cs

Запрос REST

Синтаксис запроса

Способ URI запроса
POST {baseURL}/v1/customers/{customer_tenant_id}/квалификации HTTP/1.1

Параметр универсального кода ресурса

Чтобы обновить квалификацию, используйте следующий параметр запроса.

Имя. Type Обязательно Описание
customer-tenant-id GUID Да Это значение — идентификатор GUID, отформатированный клиентом клиента , который позволяет торговому посреднику фильтровать результаты для данного клиента, который принадлежит торговому посреднику.

Заголовки запросов

Дополнительные сведения см. в статье о заголовках REST Центра партнеров.

Текст запроса

В этой таблице описывается объект квалификации в тексте запроса.

Свойство Тип Обязательно Описание
Квалификация строка Да Строковое значение из перечисления CustomerQualification.

В этой таблице описывается текст запроса для квалификации для образования.

Свойство Тип Обязательно Описание
Квалификация строка Да Образование
EducationSegment строка Да K12, HigherEducation
Website string Нет Веб-сайт для сущности образования

Если квалификация является для образования, то сегмент образования является обязательным полем.

  • Допустимые значения для EducationSegment: K12 и HigherEducation
  • Веб-сайт остается необязательным полем и имеет значение только в том случае, если квалификация является для образования. Однако, включая его, если доступно или применимо, настоятельно рекомендуется

В этой таблице описывается текст запроса для квалификации GovernmentCommunityCloud.

Свойство Тип Обязательно Описание
Квалификация строка Да GovernmentCommunityCloud
Код проверки строка Да Код проверки GCC партнера. Пример — 123456

Если квалификация для GovernmentCommunityCloud,проверка Кода является обязательным полем.

Пример запроса

POST https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/qualifications HTTP/1.1
Accept: application/json
Content-Type: application/json
MS-CorrelationId: 7d2456fd-2d79-46d0-9f8e-5d7ecd5f8745
MS-RequestId: 037db222-6d8e-4d7f-ba78-df3dca33fb68

// SOE
{
    "qualification": "StateOwnedEntity"
}

// Education
{
    "qualification": "Education",
    "educationSegment": "HigherEducation", // could also be "K12"
    "website": "contoso.edu"
}

// GCC
{
    "qualification": "GovernmentCommunityCloud",
    "validationCode": "123456"
}

Ответ REST

В случае успешного выполнения этот метод возвращает объект квалификации в теле отклика. Ниже приведен пример вызова POST для клиента (с предыдущей квалификацией None) с квалификацией для образования .

Коды успешного выполнения и ошибок в ответе

Каждый ответ содержит код состояния HTTP, указывающий на успешность или сбой, а также другие сведения об отладке. Используйте средство трассировки сети, чтобы просматривать этот код, тип ошибки и дополнительные параметры. См. полный список кодов ошибок.

Пример ответа

HTTP/1.1 201 CREATED
Content-Length: 29
Content-Type: application/json
MS-CorrelationId: 7d2456fd-2d79-46d0-9f8e-5d7ecd5f8745
MS-RequestId: 037db222-6d8e-4d7f-ba78-df3dca33fb68
{
    "qualification": "Education",
    "vettingStatus": "InReview",
    "vettingCreateDate": "2020-12-04T20:54:24Z" // UTC
}