Валидация дополнительных параметров Услуг для Тарифного плана Реселлера

Метод Validate the Reseller's Plan order attributes используется при покупке новой Подписки (см. Создание Заказа на покупку) для валидации значений дополнительных параметров (см. Получение списка дополнительных параметров Услуг для Тарифного плана Реселлера), необходимых для провижининга Услуги, по указанному ID Тарифного плана текущего Реселлера или любого из его нижестоящих Реселлеров.

В результате выполнения запроса в платформе создается асинхронная задача, в рамках которой будет выполняться валидация дополнительных параметров на стороне Услуги. Для проверки результата выполнения задачи необходимо использовать метод Get information about the Reseller async task by ID (см. Получение информации об асинхронной задаче Реселлера по ID).

Для Подписок Microsoft, если требуется, одновременно с валидацией домена клиента в сети Microsoft (Tenant name) для указанного Клиента принимается соглашение Microsoft Customer Agreement от лица Сотрудника, API-токен которого использовался при отправке запроса.

Доступ к текущему Реселлеру, относительно которого формируется список нижестоящих Реселлеров, определяется по токену Сотрудника, указанному в заголовке запроса.

Для Услуг, не требующих валидации дополнительных параметров (например, Google Workspace (G Suite)), в результате вызова этого метода асинхронная задача всё равно будет создана и успешно завершена.

POST {base_url}/api/v3/resellers/{reseller_id}/plans/{plan_id}/order_attributes_validation

Аргументы

Название

Тип параметра

Тип данных

Обязательный/ 
Опциональный

Описание

X-Api-TokenheaderstringОбязательныйAPI токен Сотрудника, выполняющего операцию (см. Просмотр и обновление информации о сотруднике)
Content-TypeheaderstringОбязательныйПредназначен для идентификации формата и способа представления сущности
AcceptheaderstringОбязательныйПредназначен для информирования сервера о типах данных, которые поддерживаются клиентом (браузером)
reseller_idpathintegerОбязательныйID Реселлера. Возможно указать ID текущего Реселлера или ID любого из его нижестоящих Реселлеров (см. Просмотр информации о реселлере)
plan_idpathintegerОбязательный

ID Тарифного плана

dataformobjectОбязательныйИнформация об атрибутах операции

account_idformintegerОбязательныйID Клиента, для которого покупается Подписка

order_attributesformarrayОбязательныйСписок дополнительных параметров и их значений в зависимости от Услуги, связанной с указанным Тарифным планом (см. Получение списка дополнительных параметров Услуги для Тарифного плана Реселлера)


keyformstringОбязательныйКлюч дополнительного параметра


valueformЗависит от параметраОбязательныйЗначение дополнительного параметра


plugin_slugform

string

Обязательный

Модуль, на основе которого создана Услуга для указанного дополнительного параметра:

  • office365 — модуль Office365.
  • microsoft_csp_products — модуль MicrosoftCspProducts.
  • vendor_service — модуль VSP (Vendor service plugin).

Модель ответа

В случае отсутствия ошибок метод возвращает данные о созданной асинхронной задаче в статусе pending (см. модель ответа в Получение информации об асинхронной задаче Реселлера по ID).

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

POST /api/v3/resellers/1/plans/1770/order_attributes_validation
Host: test.activeplatform.com
Content-Type: application/vnd.api+json
X-Api-Token: vY5fwetestK3gJXZH5uHCw
Accept: application/vnd.api+json
{
    "data": {
        "account_id": 784,
        "attributes": [
            {
                "key": "reservation_scope",
                "value": "All Subscriptions",
                "plugin_slug": "office365"
            },
            {
                "key": "azure_subscriptions",
                "value": [
                    "#3007831 Azure (Office365 plugin) (XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX)"
                ],
                "plugin_slug": "office365"
            }
        ]
    }
}

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

{
     "data":
    {
        "id": "9b68427b-52d5-4c01-9b77-eb1b70517414",
        "type": "async_tasks",
        "attributes":
        {
            "status": "pending",
            "failure_message": "",
            "result": []
        }
    }
}