Создание заказа на продление

Метод Create renewal order позволяет создать заказ на продление существующей подписки текущего реселлера или любого из его нижестоящих реселлеров (см. Ручное продление подписки).

Для авторизации требуется API-токен сотрудника. API-токен можно получить через Панель управления Оператора (см. Просмотр и обновление информации о сотруднике).

По указанному в запросе API-токену определяются текущий реселлер и его нижестоящие реселлеры, доступные в рамках метода.

POST {base_url}/api/v3/resellers/{reseller_id}/renewal_order

Аргументы

Название

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

Тип данных

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

Описание

X-Api-TokenheaderstringОбязательныйAPI-токен сотрудника, выполняющего операцию (см. Просмотр и обновление информации о сотруднике)
Content-TypeheaderstringОбязательныйТип данных, передаваемых в запросе. Необходимо указать: application/vnd.api+json
AcceptheaderstringОбязательныйПоддерживаемые типы данных в ответе. Необходимо указать: application/vnd.api+json
base_urlpathstringОбязательныйURL ActivePlatform
reseller_idpathintegerОбязательныйID реселлера. Возможно указать ID текущего реселлера или ID любого из его нижестоящих реселлеров (см. Просмотр информации о реселлере)
dataformobjectОбязательныйИнформация об атрибутах операции

attributesformobjectОбязательныйАтрибуты операции


subscription_idformintegerОбязательныйID подписки, которую необходимо продлить


plan_period_idformintegerОбязательныйID периода тарифного плана подписки


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



dataformarrayОпциональныйИнформация о ресурсах. Обязательно для ресурсов с ненулевым минимальным или дополнительным количеством




plan_resource_idformintegerОпциональныйID ресурса тарифного плана




quantityformintegerОпциональныйЦелевое количество ресурса


promo_codeformstringОпциональныйКод для получения скидки

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

В случае отсутствия ошибок метод возвращает данные о созданном заказе на переключение (см. модель ответа в Получение информации о заказе реселлера). Статус ответа: 201 Created.

Ошибки

Статус ошибкиТекст ошибкиКомментарий
403Выполнение действия запрещеноСписок доступных действий над подпиской см. в Получение информации о подписке реселлера
422Заказанное количество ресурсов не удовлетворяет доступному диапазону значенийНеобходимо уменьшить или увеличить количество ресурсов в соответствии с пределами, заданными в целевом тарифном плане
Период id недоступен для заказа в тарифном планеПродление на период с указанным 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"
                    }
                ]
            }
        }
    }
}