---
title: "Обновление подписки · бесплатно"
method: PATCH
path: "/v1/callback/subscriptions/{subscription_id}"
tags: ["Уведомления"]
---

# Обновление подписки · бесплатно

`PATCH /v1/callback/subscriptions/{subscription_id}`

## Request

- Base URL: `https://maxstat.ru/api`
- URL: `https://maxstat.ru/api/v1/callback/subscriptions/{subscription_id}`
- Auth: API key in header `X-API-Token`

> 💳 **Стоимость:** бесплатно

Обновляет URL получателя уведомлений и/или статус активности подписки. При повторном включении подписки сбрасываются счётчики ошибок и доставка возобновляется на следующем тике.

## Path parameters

- `subscription_id` string, uuid, required: Идентификатор подписки на уведомления.

## Request body

- UpdateSubscriptionBody
  - `callback_url` string, uri, nullable: Новый публично доступный HTTPS URL получателя уведомлений.
  - `active` boolean, nullable: Статус подписки. Неактивные подписки не обрабатываются. При установке `true` сбрасываются счётчики ошибок.

## Response `200`

Successful Response

- SubscriptionResponse
  - `id` string, uuid, required: Идентификатор подписки.
  - `type` 'channel' | 'keyword', required: Тип подписки: `channel` для канала или `keyword` для поискового запроса.
  - `active` boolean: Признак активности подписки. Неактивные подписки не обрабатываются.
  - `callback_url` string, required: URL, на который отправляются уведомления по подписке.
  - `channel_id` string, nullable: Идентификатор отслеживаемого канала. Заполняется только для подписок типа `channel`.
  - `query` string, nullable: Поисковый запрос. Заполняется только для подписок типа `keyword`.
  - `category_id` integer, nullable: Идентификатор категории канала для подписки типа `keyword`, если фильтр задан.
  - `last_processed_at` string, date-time, nullable: Дата и время, до которых MaxStat проверил новые публикации по этой подписке.
  - `last_matched_at` string, date-time, nullable: Дата и время последней отправки уведомления с найденными публикациями.
  - `last_error_at` string, date-time, nullable: Дата и время последней ошибки при отправке уведомления.
  - `last_error_type` string, nullable: Имя класса исключения последней ошибки доставки, например `ConnectError` или `HTTPStatusError`.
  - `consecutive_failures` integer: Количество последовательных ошибок доставки. При достижении порога подписка автоматически деактивируется.
  - `created_at` string, date-time, required: Дата и время создания подписки.
  - `updated_at` string, date-time, required: Дата и время последнего обновления подписки.

## Other responses

- `401`: Ошибка аутентификации: API-токен не передан, недействителен или отозван.
- `402`: Проблема с тарифом: нет активного периода подписки или недостаточно кредитов.
- `403`: Доступ запрещён.
- `404`: Запрошенный ресурс не найден.
- `422`: Ошибка валидации параметров запроса. Подробности — в поле details.
- `429`: Превышен лимит запросов. Повторите запрос позже.
- `500`: Внутренняя ошибка сервиса. Сообщите request_id в поддержку.
- `503`: Сервис временно перегружен. Повторите запрос через несколько секунд (см. заголовок Retry-After).

---

[API](https://skmtc.dev/maxstat/apis/maxstat-public-api.md) · [All operations](https://skmtc.dev/maxstat/apis/maxstat-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/maxstat/apis/maxstat-public-api/revisions/4eff97f9a0b2?raw)
