Продлить Членство Устройства
Массовое обновление срока действия членства устройства с гибкими режимами сопоставления и продления.
/api/device/membership/renewПараметры запроса
Все параметры можно передавать через Query или Body
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
token | string | Обязательный | Токен API пользователя Пример: your_api_token_here |
mode | string | Опционально | Режим продления: продлить, установить или постоянный. По умолчанию устанавливается режим «установить», если указано expire_time, иначе — «продлить» extendsetpermanent Пример: extend |
base | string | Опционально | База продления: авто, текущая или сейчас autocurrentnow Пример: auto |
days | number | Опционально | Количество дней для добавления в режиме продления Пример: 30 |
seconds | number | Опционально | Количество секунд для добавления в режиме продления. Имеет более высокий приоритет, чем дни Пример: 2592000 |
duration | string | Опционально | Выражение продолжительности: 30д, 12ч, 60м или 3600с Пример: 30d |
expire_time | number | Опционально | Новая метка времени истечения для режима установки, в секундах или миллисекундах. 0 означает постоянный Пример: 1772267945 |
kid | string | Опционально | KID одного устройства Пример: KID001 |
udid | string | Опционально | UDID одного устройства Пример: 00008030-001234567890002E |
kids | array | Опционально | Массив идентификаторов устройств (KID). Поддерживаются строки, разделенные запятыми, пробелами или переносами строк Пример: KID001,KID002 |
udids | array | Опционально | Массив UDID устройств. Если один UDID имеет несколько сертификатов, match=all обновляет все по умолчанию. Поддерживаются строки, разделенные запятыми, пробелами или переносами строк Пример: 00008030-001234567890002E |
items | array | Опционально | Расширенные элементы пакета. Каждый элемент может включать kid или UDID и переопределять режим/базу/дни/секунды/продолжительность/время истечения Пример: [{"kid":"KID001","mode":"extend","days":30},{"udid":"00008030-001234567890002E","mode":"permanent"}] |
match | string | Опционально | Обработка множественных совпадений: все, первое или ошибка. По умолчанию все allfirsterror Пример: all |
continue_on_error | boolean | Опционально | Продолжать ли выполнение после ошибки элемента. По умолчанию true Пример: true |
Ответ
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
code | number | Обязательный | Код состояния: 1=запрос обработан Пример: 1 |
data.total | number | Обязательный | Количество запрошенных элементов устройства Пример: 2 |
data.success | number | Обязательный | Количество успешных продлений Пример: 2 |
data.failed | number | Обязательный | Количество неудачных продлений Пример: 0 |
data.results[].kid | string | Обязательный | KID устройства Пример: KID001 |
data.results[].old_expire_time | number | Обязательный | Временная метка истечения предыдущего членства. 0 означает постоянно Пример: 1769675945 |
data.results[].new_expire_time | number | Обязательный | Временная метка истечения нового членства. 0 означает постоянно Пример: 1772267945 |
data.results[].new_expire_at | string | Обязательный | Отформатированное новое время истечения Пример: 2026-02-28 15:04:05 |
Массовое продление на 30 дней по KID
Используйте KID через запятую с режимом продления
Массовое продление по UDID
Для сценариев, когда доступны только UDID. По умолчанию обновляются несколько сертификатов под одним UDID
Установите явное время истечения срока действия
Используйте mode=set, чтобы установить явную временную метку истечения членства
Установите постоянное действие
Используйте mode=permanent, чтобы сделать членство постоянным
Стратегия для каждого устройства
Каждый элемент может переопределять глобальные параметры обновления
Обновляйте только последнее совпадение для UDID
С параметром match=first обновляется только последний совпавший сертификат с тем же UDID
Коды ошибок
122021X-Lang: enzh, en, zh-TW, vi, arПримеры кода
curl -X POST "https://testypro.iwai.cc,https://cer.xyul.cn,https://cer.iwai.cc/api/device/membership/renew" \
-H "X-Lang: en" \
-H "Content-Type: application/json" \
-d '{
"token": "your_api_token_here",
"mode": "extend",
"base": "auto",
"days": 30,
"seconds": 2592000,
"duration": "30d",
"expire_time": 1772267945,
"kid": "KID001",
"udid": "00008030-001234567890002E",
"kids": "KID001,KID002",
"udids": "00008030-001234567890002E",
"items": "[{\"kid\":\"KID001\",\"mode\":\"extend\",\"days\":30},{\"udid\":\"00008030-001234567890002E\",\"mode\":\"permanent\"}]",
"match": "all",
"continue_on_error": true
}'Примечания
- Этот API только обновляет членство устройства / срок действия загрузки сертификата. Он не выполняет повторную подпись и не списывает баланс
- 0 означает постоянный. В режиме расширения постоянные устройства по умолчанию остаются постоянными; используйте base=now, чтобы задать конечный срок истечения
- Когда UDID соответствует нескольким сертификатам, match=all обновляет все по умолчанию. Используйте first или error, чтобы изменить поведение
- Поддерживаются как JSON, так и формы запросов. Элементы формы могут быть строкой JSON-массива
Попробуйте в Консоли
Заполните параметры ниже и отправьте запрос для тестирования. Запросы отправляются только на API этого сайта; URL зафиксирован и не может быть изменен, а текущий файл cookie для входа включен.
https://testypro.iwai.cc/api/device/membership/renewЗаблокировано для этого сайтаТокен API пользователя
Режим продления: продлить, установить или постоянный. По умолчанию устанавливается режим «установить», если указано expire_time, иначе — «продлить»
База продления: авто, текущая или сейчас
Количество дней для добавления в режиме продления
Количество секунд для добавления в режиме продления. Имеет более высокий приоритет, чем дни
Выражение продолжительности: 30д, 12ч, 60м или 3600с
Новая метка времени истечения для режима установки, в секундах или миллисекундах. 0 означает постоянный
KID одного устройства
UDID одного устройства
Массив идентификаторов устройств (KID). Поддерживаются строки, разделенные запятыми, пробелами или переносами строк
Массив UDID устройств. Если один UDID имеет несколько сертификатов, match=all обновляет все по умолчанию. Поддерживаются строки, разделенные запятыми, пробелами или переносами строк
Расширенные элементы пакета. Каждый элемент может включать kid или UDID и переопределять режим/базу/дни/секунды/продолжительность/время истечения
Обработка множественных совпадений: все, первое или ошибка. По умолчанию все
Продолжать ли выполнение после ошибки элемента. По умолчанию true