Создание Заказа на продление
Метод Create a Renewal Order позволяет создать Заказ на продление существующей Подписки текущего Реселлера или любого из его нижестоящих Реселлеров (см. Ручное продление подписки).
Доступ к текущему Реселлеру, относительно которого формируется список нижестоящих Реселлеров, определяется по токену Сотрудника, указанному в заголовке запроса.
POST {base_url}/api/v3/resellers/{reseller_id}/renewal_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_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, так как в Тарифном плане для Ресурса установлено минимальное количество больше 0 | |
Заказ не может быть завершен: сумма заказа превышает кредитный лимит по подписке | Чтобы создать Заказ, необходимо увеличить Кредитный лимит для Клиента (см. Просмотр и обновление информации о клиенте) или индивидуальный Кредитный лимит для данной Подписки (см. Просмотр и обновление информации о подписке) | |
Количество заказанных ресурсов для план ресурса с id должно быть N | Количество Ресурса с указанным ID в Заказе должно быть равно текущему количеству Ресурса в Подписке |
Пример запроса
POST /api/v3/resellers/1/renewal_order
Host: test.activeplatform.com
Content-Type: application/vnd.api+json
X-Api-Token: vY5fwetestK3gJXZH5uHCw
Accept: application/vnd.api+json
{
"data": {
"attributes": {
"subscription_id": 3007529,
"plan_period_id" : 2808,
"resources": {
"data": [
{
"plan_resource_id": 4340,
"quantity": 5
}
]
},
"promo_code": ""
}
}
}
Пример ответа
{
"data": {
"id": "11769",
"type": "renewal_orders",
"attributes": {
"created_at": "2021-03-06T00:43:54.987+03:00",
"updated_at": "2021-03-06T00:43:55.439+03:00",
"document_id": "RN002623",
"status": "waiting_for_provisioning",
"account_id": 710,
"type": "RenewalOrder",
"closed_at": null,
"expiration_date": "2023-03-06",
"provisioning_date": "2022-03-06",
"total": "14.52",
"promo_code": null,
"payment_id": null,
"manager_id": 225,
"requester_ip": null,
"custom_price": false,
"created_by": "#225 Adam Manager",
"subscription_id": 3007529,
"items": [
{
"id": 20158,
"target_id": "Subscription",
"target_type": "Subscription",
"type": "ProvisioningItem::Renew",
"status": "waiting_for_payment",
"description": "Clean CSPmonthly",
"quantity": "2023-03-06"
},
{
"id": 20159,
"target_id": "SubscriptionResource",
"target_type": "SubscriptionResource",
"type": "ProvisioningItem::Upgrade",
"status": "waiting_for_payment",
"description": "HDD",
"quantity": 1
}
]
},
"relationships": {
"charges": {
"data": [
{
"id": "311809",
"type": "charges"
}
]
}
}
}
}