Валидация дополнительных параметров услуг для тарифного плана
Метод Validate order attributes of plan используется при покупке новой подписки (см. Создание заказа на покупку) для валидации значений дополнительных параметров (см. Получение списка дополнительных параметров услуг для Тарифного плана реселлера), необходимых для провижининга услуги, по указанному ID тарифного плана текущего реселлера или любого из его нижестоящих.
В результате выполнения запроса в платформе создается асинхронная задача, в рамках которой будет выполняться валидация дополнительных параметров на стороне услуги. Для проверки результата выполнения задачи необходимо использовать метод Get async task (см. Получение информации об асинхронной задаче).
Для авторизации требуется API-токен менеджера (сотрудника). API-токен можно получить через Панель управления Оператора (см. Просмотр и обновление информации о сотруднике).
По указанному в запросе API-токену определяются:
- Роль и уровень доступа менеджера, от которых зависит доступность метода.
- Текущий реселлер и его нижестоящие реселлеры, доступные в рамках метода.
POST {base_url}/api/v3/resellers/{reseller_id}/plans/{plan_id}/order_attributes_validation
Аргументы
Название | Тип параметра | Тип данных | Обязательный/ | Описание | ||
---|---|---|---|---|---|---|
X-Api-Token | header | string | Обязательный | API-токен сотрудника, выполняющего операцию (см. Просмотр и обновление информации о сотруднике) | ||
Content-Type | header | string | Обязательный | Тип данных, передаваемых в запросе. Необходимо указать: application/vnd.api+json | ||
Accept | header | string | Обязательный | Поддерживаемые типы данных в ответе. Необходимо указать: application/vnd.api+json | ||
base_url | path | string | Обязательный | URL ActivePlatform | ||
reseller_id | path | integer | Обязательный | ID реселлера. Возможно указать ID текущего реселлера или ID любого из его нижестоящих реселлеров (см. Просмотр информации о реселлере) | ||
plan_id | path | integer | Обязательный | ID тарифного плана | ||
data | form | object | Обязательный | Информация об атрибутах операции | ||
account_id | form | integer | Обязательный | ID клиента, для которого покупается подписка | ||
plan_period_id | form | integer | Опциональный | ID заказываемого периода указанного тарифного плана (см. Создание заказа на покупку). Обязательный для услуг на основе модуля MicrosoftCspProducts, так как влияет на логику валидации | ||
order_attributes | form | array | Обязательный | Список дополнительных параметров и их значений в зависимости от услуги, связанной с указанным тарифным планом (см. Получение списка дополнительных параметров услуги для Тарифного плана реселлера) | ||
key | form | string | Обязательный | Ключ дополнительного параметра | ||
value | form | string | Обязательный | Значение дополнительного параметра. Для
| ||
plugin_slug | form | string | Обязательный | Модуль, на основе которого создана услуга для указанного дополнительного параметра:
| ||
resources | form | array | Опциональный | Список заказываемых ресурсов. Обязательный для услуг на основе модуля MicrosoftCspProducts, так как влияет на логику валидации | ||
plan_resource_id | form | integer | Опциональный | ID заказываемого ресурса указанного тарифного плана (см. Создание заказа на покупку). | ||
quantity | form | integer | Опциональный | Количество заказываемого ресурса указанного тарифного плана |
Модель ответа
В случае отсутствия ошибок метод возвращает данные о созданной асинхронной задаче в статусе pending (см. модель ответа в Получение информации об асинхронной задаче).
Пример запроса
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": 833,
"order_attributes": [
{
"plugin_slug": "office365",
"key": "is_new_domain",
"value": "1"
},
{
"plugin_slug": "office365",
"key": "with_subdomain",
"value": "1"
},
{
"plugin_slug": "office365",
"key": "customer_domain",
"value": "exampledomain"
},
{
"plugin_slug": "office365",
"key": "microsoft_customer_agreement",
"value": "1"
}
]
}
}
Пример ответа
{
"data":
{
"id": "9b68427b-52d5-4c01-9b77-eb1b70517414",
"type": "async_tasks",
"attributes":
{
"status": "pending",
"failure_message": "",
"result": []
}
}
}