Создание Заказа на переключение
Метод Create a Switch Order позволяет создать Заказ на переключение для существующей Подписки текущего Реселлера или любого из его нижестоящих Реселлеров (см. Переключение тарифного плана).
Доступ к текущему Реселлеру, относительно которого формируется список нижестоящих Реселлеров, определяется по токену Сотрудника, указанному в заголовке запроса.
POST {base_url}/api/v3/resellers/{reseller_id}/switch_order
Аргументы
Название | Тип параметра | Тип данных | Обязательный/ | Описание | ||||
---|---|---|---|---|---|---|---|---|
X-Api-Token | header | string | Обязательный | API токен Сотрудника, выполняющего операцию (см. Просмотр и обновление информации о сотруднике) | ||||
Content-Type | header | string | Обязательный | Предназначен для идентификации формата и способа представления сущности | ||||
Accept | header | string | Обязательный | Предназначен для информирования сервера о типах данных, которые поддерживаются клиентом (браузером) | ||||
reseller_id | path | integer | Обязательный | ID Реселлера. Возможно указать ID текущего Реселлера или ID любого из его нижестоящих Реселлеров (см. Просмотр информации о реселлере) | ||||
data | form | object | Обязательный | Информация об атрибутах операции | ||||
attributes | form | object | Обязательный | Атрибуты операции | ||||
subscription_id | form | integer | Обязательный | ID Подписки, для которой необходимо сменить Тарифный план | ||||
plan_id | form | integer | Обязательный | ID целевого Тарифного плана | ||||
plan_period_id | form | integer | Обязательный | ID периода целевого Тарифного плана | ||||
resources | form | object | Опциональный | Перечень Ресурсов в Заказе на переключение. Обязательный, если хотя бы для одного Ресурса указано ненулевое минимальное количество в Тарифном плане или заказывается дополнительное количество (см. Ресурсы тарифного плана) | ||||
data | form | array | Опциональный | Информация о Ресурсах. Обязательно для Ресурсов с ненулевым минимальным или дополнительным количеством | ||||
plan_resource_id | form | integer | Опциональный | ID Ресурса Тарифного плана | ||||
quantity | form | integer | Обязательный | Целевое количество Ресурса | ||||
promo_code | form | string | Опциональный | Код для получения скидки |
Модель ответа
В случае отсутствия ошибок метод возвращает данные о созданном Заказе на переключение (см. модель ответа в Получение информации о Заказе Реселлера). Статус ответа: 201 Created.
Ошибки
Статус ошибки | Текст ошибки | Комментарий |
---|---|---|
403 | Выполнение действия запрещено | Список доступных действий над Подпиской см. в Получение информации о Подписке Реселлера |
422 | Невозможно переключение на тарифный план id | Целевой Тарифный план с указанным ID должен быть в числе переключаемых и в статусе Активный (см. Получение списка переключаемых Тарифных планов Реселлера) |
Период id недоступен для заказа в тарифном плане | Переключение на период с указанным ID недоступно по одной из следующих причин:
| |
Заказанное количество ресурсов не удовлетворяет доступному диапазону значений | Необходимо уменьшить или увеличить количество Ресурсов в соответствии с пределами, заданными в целевом Тарифном плане | |
Заказ не может быть завершен: сумма заказа превышает кредитный лимит по подписке | Чтобы создать Заказ, необходимо увеличить Кредитный лимит для Клиента (см. Просмотр и обновление информации о клиенте) или индивидуальный Кредитный лимит для данной Подписки (см. Просмотр и обновление информации о подписке) | |
Ресурс id недоступен для заказа в тарифном плане | Ресурс с указанным ID недоступен в рамках целевого Тарифного плана | |
Ресурс id должен быть заказан | В Заказ необходимо добавить обязательный Ресурс с указанным ID, так как в целевом Тарифном плане для Ресурса установлено минимальное количество больше 0 |
Пример запроса
POST /api/v3/resellers/1/switch_order
Host: test.activeplatform.com
Content-Type: application/vnd.api+json
X-Api-Token: vY5fwetestK3gJXZH5uHCw
Accept: application/vnd.api+json
{
"data": {
"attributes": {
"subscription_id": 3007437,
"plan_id": 18,
"plan_period_id": 2545,
"resources": {
"data": [
{
"plan_resource_id": 1577,
"quantity": 2
}
]
},
"promo_code": ""
}
}
}
Пример ответа
{
"data": {
"id": "11716",
"type": "switch_plan_orders",
"attributes": {
"created_at": "2021-01-07T04:40:37.744+03:00",
"updated_at": "2021-01-07T04:40:38.880+03:00",
"document_id": "CH000792",
"status": "completed",
"account_id": 317,
"type": "SwitchPlanOrder",
"closed_at": "2021-01-07T04:40:38.880+03:00",
"expiration_date": "2021-02-05",
"provisioning_date": null,
"total": "-97.43",
"promo_code": "",
"payment_id": null,
"manager_id": 217,
"requester_ip": null,
"custom_price": false,
"created_by": "#217 Vitaly Fox",
"subscription_id": 3007437,
"items": [
{
"id": 17997,
"target_id": "SubscriptionResource",
"target_type": "SubscriptionResource",
"type": "ProvisioningItem::Upgrade",
"status": "completed",
"description": "res2",
"quantity": 2
},
{
"id": 17996,
"target_id": "Subscription",
"target_type": "Subscription",
"type": "ProvisioningItem::SwitchPlan",
"status": "completed",
"description": "Autoprovisioning with res2",
"quantity": "1"
}
]
},
"relationships": {
"charges": {
"data": [
{
"id": "96892",
"type": "charges"
},
{
"id": "96893",
"type": "charges"
}
]
}
}
}
}