OpenAPIOpenAPI
  • English
  • 简体中文
  • 繁體中文
  • Indonesia
  • हिंदी
  • Русский
  • Tiếng Việt
  • German
  • português
  • English
  • 简体中文
  • 繁體中文
  • Indonesia
  • हिंदी
  • Русский
  • Tiếng Việt
  • German
  • português
  • NSocks

title: NSocks language_tabs:

  • shell: Shell
  • http: HTTP
  • javascript: JavaScript
  • ruby: Ruby
  • python: Python
  • php: PHP
  • java: Java
  • go: Go toc_footers: [] includes: [] search: true code_clipboard: true highlight_theme: darkula headingLevel: 2 generator: "@tarslib/widdershins v4.0.30"

NSocks

Чтобы просмотреть ключ аутентификации app_key войдите в систему на главной странице вашего личного кабинета.

Пожалуйста, храните свой ключ в безопасном месте. У вас есть права администратора для работы с этим ключом.

Метод аутентификации

Ключ приложения

Параметры POST:

app_key: {your_app_key}

Или в качестве параметра запроса:

?app_key={your_app_key}

Формат ответа

Все API возвращают данные в едином формате JSON:

{
"код": 200,
"message": "操作成功",
"данные": {}
}
  • code : Код состояния, 200 означает успех, другие значения — неудачу.
  • message : Ответное сообщение (на китайском языке)
  • data : данные ответа

Базовые URL-адреса:

  • https://api.nsocks.com : https://api.nsocks.com

Аутентификация

  • HTTP-аутентификация, схема: bearer

  • Ключ API (apiKeyAuth)

    • Имя параметра: app_key , в: query. 支持GET/POST,имя 支持

Управление агентскими аккаунтами

Получить список прокси-аккаунтов

GET /ep/whitelist-account/list

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
      {
"id": 0,
"имя пользователя": "строка",
"password": "string",
"created_at": "string",
"примечание": "строка",
"product_type": 9,
"usage_flow": 0,
"limit_flow": 102400,
"статус": 0
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодresponseCodeЛОЖЬниктоКоды состояния: 200 — Успех, 3 — Недействительный app_key
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоникто
""" идентификаторцелое числоЛОЖЬниктоНомер счета
""" имя пользователянитьЛОЖЬниктоИмя учетной записи агента
""" парольнитьЛОЖЬниктоПароль прокси-аккаунта
создано_внитьЛОЖЬниктоДобавить время
»»» замечаниенитьЛОЖЬниктоПримечание
тип продуктаТипы продуктовЛОЖЬниктоТипы пакетов: 9 динамических пакетов для домашнего трафика, 11 динамических пакетов IP-адресов для домашнего трафика, 14 статических пакетов IP-адресов для центров обработки данных, 25 статических пакетов IP-адресов для домашнего трафика.
»»» usage_flowцелое числоЛОЖЬниктоОбъем использованных данных, в КБ
»»» limit_flowцелое числоЛОЖЬниктоПользовательский лимит трафика: максимум 102400 ГБ, 0 — без ограничений.
статус »»»целое числоЛОЖЬниктоСтатус включения: 1 включено, 0 выключено

Значение перечисления

свойствоценить
тип продукта9
тип продукта11
тип продукта14
тип продукта25

POST Добавить прокси-аккаунт.

POST /ep/whitelist-account/add

Параметры запроса тела

{
"app_key": "stringstringstringstringstringst",
"учетные записи": "user01:pass,user02:pass,user03:pass",
"замечание": "",
"product_type": 9
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
» аккаунтытелонитьнетПожалуйста, введите ваше имя пользователя и пароль в формате имя пользователя:пароль. Допускаются только цифры и буквы; специальные символы и пробелы запрещены. Разделяйте имя пользователя и пароль двоеточием. Поддерживается пакетное добавление; разделяйте учетные записи прокси запятыми (,).
замечаниетелонитьнетОписание учетной записи агента
» тип_продуктателоТипы продуктовнетТипы пакетов: 9 динамических пакетов для домашнего трафика, 11 динамических пакетов IP-адресов для домашнего трафика, 14 статических пакетов IP-адресов для центров обработки данных, 25 статических пакетов IP-адресов для домашнего трафика.

Значение перечисления

свойствоценить
» тип_продукта9
» тип_продукта11
» тип_продукта14
» тип_продукта25

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

Удалить учетную запись агента (POST)

POST /ep/whitelist-account/delete

Обратите внимание, что удаление необратимо, и использованные данные восстановить невозможно. Удаление занимает приблизительно 5 минут, в течение которых может взиматься плата.

Параметры запроса тела

{
"app_key": "stringstringstringstringstringst",
"учетные записи": "пользователь01,пользователь02"
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
» аккаунтытелонитьнетВ учетных записях агентов поддерживаются только цифры и буквы. Поддерживаются пакетные операции; учетные записи агентов разделяются запятыми (,).

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

POST Отключить прокси-аккаунт

POST /ep/whitelist-account/disable

После отключения системы предусмотрено примерно 5-минутное ожидание, в течение которого могут взиматься дополнительные сборы.

Параметры запроса тела

{
"app_key": "stringstringstringstringstringst",
"учетные записи": "пользователь01,пользователь02"
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
» аккаунтытелонитьнетВ учетных записях агентов поддерживаются только цифры и буквы. Поддерживаются пакетные операции; учетные записи агентов разделяются запятыми (,).

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

POST Включить прокси-аккаунт

POST /ep/whitelist-account/enable

Параметры запроса тела

{
"app_key": "stringstringstringstringstringst",
"учетные записи": "пользователь01,пользователь02"
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
» аккаунтытелонитьнетВ учетных записях агентов поддерживаются только цифры и буквы. Поддерживаются пакетные операции; учетные записи агентов разделяются запятыми (,).

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

POST-запрос для изменения пароля прокси-аккаунта

POST /ep/whitelist-account/change-password

Обратите внимание, что после внесения изменений необходимо подождать 5 минут. В течение этого времени старый пароль может по-прежнему работать в обычном режиме.

Параметры запроса тела

{
"app_key": "stringstringstringstringstringst",
"аккаунт": "пользователь",
"password": "pass"
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
" счеттелонитьнетВ учетных записях агентов поддерживаются только цифры и буквы.
" парольтелонитьнетНовый пароль для учетной записи агента поддерживает только цифры и буквы.

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

POST-запрос для изменения примечаний к учетной записи агента.

POST /ep/whitelist-account/change-remark

Параметры запроса тела

{
"app_key": "stringstringstringstringstringst",
"аккаунт": "пользователь",
"примечание": ""
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
" счеттелонитьнетВ учетных записях агентов поддерживаются только цифры и буквы.
замечаниетелонитьнетНовое примечание для агентского аккаунта: не более 32 китайских или 64 английских символов.

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

Отправьте POST-запрос для изменения лимита трафика прокси-аккаунта.

POST /ep/whitelist-account/change-limit

Обратите внимание, что статистика трафика может отображаться с задержкой до 5 минут, а это значит, что фактический объем трафика может превысить этот лимит.

Параметры запроса тела

{
"app_key": "stringstringstringstringstringst",
"аккаунт": "пользователь",
"лимит": 0
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
" счеттелонитьнетВ учетных записях агентов поддерживаются только цифры и буквы.
лимиттелоцелое числонетОграничение движения, единица измерения: ГБ, 0 означает отсутствие ограничения.

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

Отправьте POST-запрос для изменения информации об учетной записи агента.

POST /ep/proxy-account/change

Измените пароль учетной записи прокси, заметки, лимит трафика, суточный лимит трафика, статус включения или переключатель UDP.

Параметры запроса тела

{
"app_key": "string",
"account": "string",
"password": "string",
"примечание": "строка",
"лимит": 0,
"daily_limit": 0,
"статус": 0,
"udp": 0
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
" счеттелонитьнетИмя учетной записи агента
" парольтелонитьнетНовый пароль длиной от 6 до 16 символов (цифры или буквы); если он не будет передан другим лицам, он не будет изменен.
замечаниетелонитьнетНовая заметка
лимиттелоцелое числонетОграничение на использование данных в ГБ; 0 означает отсутствие ограничения.
ежедневный_лимиттелоцелое числонетСуточный лимит использования данных (в ГБ); 0 означает отсутствие лимита.
» статустелоцелое числонетВключено
» udpтелоцелое числонетПоддержка UDP включается/выключается и применима только к пакетам типов 14, 16, 21 и 25.

Значение перечисления

свойствоценить
» статус0
» статус1
» udp0
» udp1

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

белый список IP-адресов

Получить список разрешенных IP-адресов

GET /ep/proxy-ip/list

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
тип продуктазапросцелое числонетномер типа упаковки

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
      {
"ip": "1.1.1.1",
"примечание": "строка",
"product_type": 0,
"created_at": "string"
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоникто
»»» ipнитьЛОЖЬниктоIP-адреса в белом списке
»»» замечаниенитьЛОЖЬниктоПримечание
тип продуктацелое числоЛОЖЬниктоТипы упаковки
создано_внитьЛОЖЬниктоВремя создания

POST Добавить IP-адрес в белый список

POST /ep/proxy-ip/add

Параметры запроса тела

{
"app_key": "string",
"ips": "1.1.1.1,2.2.2.2",
"примечание": "строка",
"product_type": 0,
"user_product_id": 0
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
» ипстелонитьнетНеобходимо добавить IP-адреса из белого списка; разделяйте несколько IP-адресов запятыми или символами новой строки.
замечаниетелонитьнетПримечание
» тип_продуктателоцелое числонетномер типа упаковки
» user_product_idтелоцелое числонетИдентификатор пользовательского пакета (обязательно, если тип пакета равен 11).

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

Отправьте POST-запрос для удаления IP-адреса из белого списка.

POST /ep/proxy-ip/delete

Параметры запроса тела

{
"app_key": "string",
"ips": "1.1.1.1,2.2.2.2",
"verify_type": "string",
"verify_code": "string"
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектнетникто
» app_keyтелонитьнетКлюч авторизации
» ипстелонитьнетПеречислите IP-адреса из белого списка, которые необходимо удалить, разделяя их запятыми.
» verify_typeтелонитьнетАдрес: телефон, электронная почта, wechat, totp.
» verify_codeтелонитьнетПроверочный код

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": null
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныенулевойЛОЖЬниктоникто

Запрос журнала трафика

Сводка данных об использовании GET по дням

GET /ep/user-usage-flow/total

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
app_keyзапросстрока(пароль)даКлюч аутентификации
время началазапросstring(Ymd H:i:s)нетВремя начала, с точностью до секунды. Обратите внимание, что при регистрации данных возможна задержка до 5 минут. По умолчанию — в пределах 7 дней.
конец_временизапросstring(Ymd H:i:s)нетКрайний срок, с точностью до секунды. Обратите внимание, что при регистрации может быть задержка до 5 минут. По умолчанию используется текущее время.
имя пользователязапроснитьнетИмя дочерней учетной записи: По умолчанию этот запрос извлекает все учетные записи. Вы можете указать дочернюю учетную запись. Обратите внимание, что если вы добавите дочернюю учетную запись с тем же именем, этот запрос вернет все записи об использовании той же учетной записи прокси.
тип продуктазапросчислонетТипы упаковки

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
      {
"день": "2022-08-01",
"поток": 0
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоникто
""" деньнитьЛОЖЬниктодата
""" потокцелое числоЛОЖЬниктоПотребление данных, в КБ

Запрос по посылке

Получить список приобретенных пакетов

GET /ep/user-product/list

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
app_keyзапросстрока(пароль)даКлюч аутентификации
trade_noзапроснитьнетНомер заказа. Пожалуйста, введите полный номер заказа. Нечеткий поиск не поддерживается.
страницазапросчислонетПагинация, по умолчанию: 1
размерзапросчислонетКоличество страниц для отображения (по умолчанию: 20)
тип продуктазапросчислонетТипы упаковки

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
      {
"id": 0,
"created_at": "2022-05-13 12:14:15",
"expired_at": "2022-05-13 12:14:15",
"product_type": 9,
"trade_no": "2022051312134339861461465434",
"заказ": {
"created_at": "2022-05-13 12:13:43",
"pay_at": "2022-05-13 12:13:43",
"title": "入门级"
        }
      }
],
"страница": 1,
"page_size": 20,
"total_count": 0,
"total_page": 0
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоникто
""" идентификаторцелое числоЛОЖЬниктоНомер упаковки
создано_внитьЛОЖЬниктоэффективное время упаковки
»»» expired_atнитьЛОЖЬниктоСрок действия тарифного плана истекает; после этого данные станут непригодными для использования.
тип продуктаТипы продуктовЛОЖЬниктоТипы пакетов: 9 динамических пакетов для домашнего трафика, 11 динамических пакетов IP-адресов для домашнего трафика, 14 статических пакетов IP-адресов для центров обработки данных, 25 статических пакетов IP-адресов для домашнего трафика.
»»» trade_noнитьЛОЖЬниктоНомер транзакции заказа
""" заказобъектЛОЖЬниктоникто
создано_внитьЛОЖЬниктоВремя создания заказа
»»»» pay_atнитьЛОЖЬниктовремя оплаты заказа
"""" заголовокнитьЛОЖЬниктоОписание заказа
"" страницацелое числоЛОЖЬниктоТекущая страница
»» размер страницыцелое числоЛОЖЬниктоРазмер страницы
»» total_countцелое числоЛОЖЬниктоОбщее количество записей
»» total_pageцелое числоЛОЖЬниктоОбщее количество страниц

Значение перечисления

свойствоценить
тип продукта9
тип продукта11
тип продукта14
тип продукта25

Получить сводку данных пользовательского пакета

GET /ep/user-product/summary

Получите сводную статистическую информацию о тарифных планах пользователей, включая общую сумму, действительную сумму, сумму, срок действия которой подходит к концу, и сумму, срок действия которой истек.

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
app_keyзапросстрока(пароль)даКлюч аутентификации
тип продуктазапросцелое числонетПоддерживаются только 9 типов продуктов (пакет динамического трафика) и 12 (пакет долгосрочного трафика IDC).

Значение перечисления

свойствоценить
тип продукта9
тип продукта12

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "Старт",
"данные": {
"Итого": 1048576,
"total_count": 5,
"эффективный": 524288,
"effective_count": 3,
"effective_total": 786432,
"effective_used": 262144,
"временный": 102400,
"temporary_count": 1,
"истек срок действия": 51200,
"expired_count": 1,
"использовано": 473088
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" общийцелое числоЛОЖЬниктоОбщий объем трафика/IP-адресов (единица измерения: КБ)
»» total_countцелое числоЛОЖЬниктоОбщее количество посылок
эффективныйцелое числоЛОЖЬниктоЭффективное оставшееся количество (единица измерения: КБ)
»» effective_countцелое числоЛОЖЬниктоКоличество действительных посылок
»» effective_totalцелое числоЛОЖЬниктоЭффективный общий объем (единица измерения: КБ)
»» effective_usedцелое числоЛОЖЬниктоДопустимое использование (единица измерения: КБ)
"" временныйцелое числоЛОЖЬниктоОбщее количество товаров, срок годности которых истекает в течение 7 дней (единица измерения: КБ).
»» temporary_countцелое числоЛОЖЬниктоКоличество упаковок с истекающим сроком годности (срок годности которых истекает в течение 7 дней)
"" истекшийцелое числоЛОЖЬниктоИстекший оставшийся объем (единица измерения: КБ)
»» expired_countцелое числоЛОЖЬниктоКоличество просроченных упаковок
"" использовалцелое числоЛОЖЬниктоОбщий объем использованных ресурсов (в КБ)

Извлечение IP-адреса

Получить извлечение IP-адреса

GET /ep/ip/v3

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
app_keyзапросстрока(пароль)даКлюч доступа
ccзапроснитьнетСтрана или регион
состояниезапроснитьнетПровинция или штат
городзапроснитьнетГород
форматзапроснитьнетПолучить формат
фунтзапроснитьнетРазделитель, допустим только для форматирования текста.
числозапросчислонетКоличество экстракции
жизньзапросчислонетЦикл поддержания - минуты
эпзапроснитьнетПрокси-сеть

Значение перечисления

свойствоценить
эпнас
эпгонконг
эпиз

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
      [
"150.109.114.72:1140",
"150.109.114.72:1141",
"150.109.114.72:1142",
"150.109.114.72:1143",
"150.109.114.72:1144",
"150.109.114.72:1145",
"150.109.114.72:1146",
"150.109.114.72:1147",
"150.109.114.72:1148",
"150.109.114.72:1149"
      ]
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[любой]ЛОЖЬниктоникто

Получить динамический список региональных городов V4

GET /ep/ip/dcl4

Для получения списка городов по имени пользователя требуется авторизация, и учетная запись должна принадлежать текущему пользователю.

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
имя пользователязапроснитьдаИмя пользователя учетной записи агента

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"cache": true,
"список": [
      {
"Город": "Лос-Анджелес",
"Область": "США",
"Штат": "Калифорния"
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
кэшлогическийЛОЖЬниктоЭто из кэша?
"" список[объект]ЛОЖЬниктоникто
""" ГороднитьЛОЖЬниктоГород
""" ОбластьнитьЛОЖЬниктообласть
""" СостояниенитьЛОЖЬниктоШтат/Провинция

Получить динамический список штатов/провинций V4

GET /ep/ip/dsl4

Для получения списка штатов/провинций по имени пользователя требуется авторизация, и учетная запись должна принадлежать текущему пользователю.

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
имя пользователязапроснитьдаИмя пользователя учетной записи агента

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"cache": true,
"список": [
      {
"Город": "Лос-Анджелес",
"Область": "США",
"Штат": "Калифорния"
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
кэшлогическийЛОЖЬниктоЭто из кэша?
"" список[объект]ЛОЖЬниктоникто
""" ГороднитьЛОЖЬниктоГород
""" ОбластьнитьЛОЖЬниктообласть
""" СостояниенитьЛОЖЬниктоШтат/Провинция

Получить динамический список интеграции региональных/провинциальных городов V4

GET /ep/ip/dal4

Получает объединенный список штатов/провинций и городов по имени пользователя, сгруппированный по региону. Требуется аутентификация при входе в систему, и учетная запись должна принадлежать текущему пользователю.

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
имя пользователязапроснитьдаИмя пользователя учетной записи агента

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"cache": true,
"список": [
      {
"Область": "США",
"штаты": [
          {
"State": null,
"города": null
          }
        ]
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
кэшлогическийЛОЖЬниктоЭто из кэша?
"" список[объект]ЛОЖЬниктоРегиональный список
""" ОбластьнитьЛОЖЬниктоКод города
штаты[объект]ЛОЖЬниктоСписок штатов/провинций
"""" СостояниенитьЛОЖЬниктоНазвание штата/провинции
города[нить]ЛОЖЬниктоСписок городов

Получить список городов

GET /ep/ip/dynamic-citys

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
      {
"name_zh_cn": "美国",
"name_en": "Соединенные Штаты",
"continent_code": "NA",
"country_code": "US",
"предметы": [
          {
"город": null,
"state": null,
"continent_code": null,
"country_code": null
          }
        ]
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоСписок
»»» name_zh_cnнитьЛОЖЬниктоНазвание страны или региона
»»» name_enнитьЛОЖЬниктоНазвание страны или региона
»»» continent_codeнитьЛОЖЬниктоКонтинентальные коды
код странынитьЛОЖЬниктоКод страны или региона
""" предметы[объект]ЛОЖЬниктоПровинция или штат
"""" городнитьЛОЖЬниктоНазвание города
"""" состояниенитьЛОЖЬниктокод названия провинции или штата
»»»» continent_codeнитьЛОЖЬниктоКонтинентальные коды
код странынитьЛОЖЬниктоКод страны или региона

Поиск городов

GET /ep/ip/dynamic-citys/search

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
код странызапроснитьдаКод страны или региона
состояниезапроснитьдакод штата или провинции

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
"нить"
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[нить]ЛОЖЬниктоСписок

Получить список штатов

GET /ep/ip/dynamic-states

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
      {
"name_zh_cn": "美国",
"name_en": "Соединенные Штаты",
"continent_code": "NA",
"country_code": "US",
"предметы": [
          {
"state": null,
"continent_code": null,
"country_code": null
          }
        ]
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоСписок
»»» name_zh_cnнитьЛОЖЬниктоНазвание страны или региона
»»» name_enнитьЛОЖЬниктоНазвание страны или региона
»»» continent_codeнитьЛОЖЬниктоКонтинентальные коды
код странынитьЛОЖЬниктоКод страны или региона
""" предметы[объект]ЛОЖЬниктоПровинция или штат
"""" состояниенитьЛОЖЬниктокод названия провинции или штата
»»»» continent_codeнитьЛОЖЬниктоКонтинентальные коды
код странынитьЛОЖЬниктоКод страны или региона

Поиск по штату/провинции

GET /ep/ip/dynamic-states/search

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
код странызапроснитьдаКод страны или региона

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "string",
"данные": {
"список": [
"нить"
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКоды состояния: 200 Успех, 3 Недействительный ключ приложения, 156 Учетная запись не подтверждена.
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[нить]ЛОЖЬниктоСписок

GET Получить список приобретенных статических IP-адресов

GET /ep/ip/get-static-ip

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
код странызапроснитьнетКод страны или региона
тип продуктазапросчислонетТип продукта: 25: Статические IP-адреса для жилых помещений, 14: IP-адреса для центров обработки данных
trade_noзапроснитьнетФильтрация IP-адресов по номеру заказа
страницазапросчислонетномер страницы
размерзапросчислонетКоличество на странице
статусзапросчислонетСтатус: 1: Действителен, 2: Недействителен, 3: Срок действия скоро истечет, 4: На техническом обслуживании

Значение перечисления

свойствоценить
тип продукта14
тип продукта25
статус1 - 2 - 3 - 4

Вернуться к примеру

Ответ 200

{}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKниктоВ соответствии

Возвращаемая структура данных

GET Получить количество статических IP-адресов, доступных для продажи в регионах.

GET /ep/ip/static-ip-region

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
интернетзапросцелое числонетФильтрация интернет-провайдера: Фильтрация не выполняется, если данные не передаются (за исключением сайтов 1/4/5, для которых по умолчанию установлено значение 1).
аснзапросцелое числонетСледует ли возвращать данные по группам ASN?
эксклюзивныйзапросцелое числонетСледует ли учитывать товарные запасы как эксклюзивные?

Подробное описание

isp : Фильтрация интернет-провайдера; если не загружено, фильтрация не работает (за исключением сайтов 1/4/5, для которых по умолчанию используется значение 1).

ценитьописывать
0Статический IP-адрес для центра обработки данных (ЦОД).
1Статический IP-адрес для домашнего использования (интернет-провайдер)

asn : Следует ли возвращать данные о группах ASN.

ценитьописывать
0Не возвращать данные, сгруппированные по ASN (по умолчанию).
1Возвращает сгруппированные данные ASN.

эксклюзивный : Следует ли рассчитывать запасы как эксклюзивные.

ценитьописывать
0Статистические данные основаны на информации о текущем пользователе/общей группе (по умолчанию).
1Исключить все назначенные IP-адреса и учитывать только имеющиеся в наличии.

Значение перечисления

свойствоценить
интернет0
интернет1
асн0
асн1
эксклюзивный0
эксклюзивный1

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "Обмен сообщениями",
"данные": {
"список": [
      {
"код": "США",
"номер": 55
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоникто
»»» коднитьЛОЖЬниктоКод страны или региона
""" числоцелое числоЛОЖЬниктоколичество

GET-запросы получают пул хостов. Поддерживаемые страны/регионы.

GET /ep/host-pool/regions

Запросите список стран/регионов, поддерживаемых текущим сайтом службы host_pool.

Этот интерфейс предназначен для сценариев, в которых IP-адреса центров обработки данных выбираются случайным образом на основе точек трафика. Он учитывает только страну/регион доступных IP-адресов центров обработки данных для текущего объекта. Он не поддерживает фильтрацию по ASN, ISP или выделенным IP-адресам, а также не исключает IP-адреса на основе записей о покупках пользователей.

Вернуться к примеру

Ответ 200

{
"код": 200,
"msg": "Обмен сообщениями",
"данные": {
"список": [
      {
"код": "США",
"номер": 55,
"name_zh_cn": "美国",
"name_en": "Соединенные Штаты",
"square_flag": "https://example.com/static/flags/us.png"
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKЗапрос выполнен успешно.В соответствии

Возвращаемая структура данных

Код состояния 200

имятипНеобходимыйограничениеКитайское имяиллюстрировать
» кодцелое числоЛОЖЬниктоКод состояния 200 Успех
» сообщениенитьЛОЖЬниктоСообщения о состоянии
данныеобъектЛОЖЬниктоникто
"" список[объект]ЛОЖЬниктоникто
»»» коднитьЛОЖЬниктоКод страны или региона, ISO 3166-1 alpha-2
""" числоцелое числоЛОЖЬниктоКоличество доступных IP-адресов центра обработки данных на текущей площадке
»»» name_zh_cnнитьЛОЖЬниктоКитайское название страны или региона
»»» name_enнитьЛОЖЬниктоАнглийское название страны или региона
»»» квадратный_флагнитьЛОЖЬниктоURL изображения квадратного национального флага

Управление заказами

Получить список заказов

GET /ep/order/list

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
страница_нетзапросцелое числонетникто
размер страницызапросцелое числонетникто
trade_noзапроснитьнетНомер заказа
время началазапросстрока(дата-время)нетВремя начала (включительно), например, 2024-01-01 00:00:00
конец_временизапросстрока(дата-время)нетВремя окончания (исключая)
статусзапросцелое числонетСтатус заказа
тип продуктазапросцелое числонетТип продукта
счетзапросцелое числонетСтатус счета: 0 — Без ограничений; 1 — Счет выставлен; -1 — Счет не выставлен (может быть перевыставлен)
статус_платежазапросцелое числонетФильтрация по сумме: 1. Переплата 2. Недоплата

Подробное описание

статус : Статус заказа

состояниеописывать
0Ожидается оплата
1Оплаченный
2Неоплачено после отмены тайм-аута
3Возврат средств получен.

Product_type : 产品类型

Тип продуктаописывать
3Пополнение баланса
9Динамические планы передачи данных
11Динамический глобальный пакет V2
12Долгосрочные пакеты трафика IDC
13Пакеты статического IP-трафика для жилых помещений
14Пакет статических IP-адресов для центров обработки данных
15Долгосрочные тарифные планы интернет-провайдера на передачу данных
16План статических данных
17Динамический пакет количества IP-адресов
18веб-скрейпер
19Продление статического IP-адреса
20Изменение статической IP-квоты
21Статический тарифный план данных v2
24Пакет дополнений для статического трафика
25Пакет статических IP-адресов для жилых помещений
26Замена заказа — Некоторые способы оплаты, например, виртуальная валюта, требуют от пользователей ручного ввода суммы. В случае возникновения недостатка средств необходимо связаться со службой поддержки для осуществления повторной оплаты через данный продукт.
27Серп
28Видео

Значение перечисления

свойствоценить
статус0
статус1
статус2
статус3
тип продукта3
тип продукта9
тип продукта11
тип продукта12
тип продукта14
тип продукта16
тип продукта17
тип продукта18
тип продукта19
тип продукта21
тип продукта24
тип продукта25
тип продукта26
тип продукта27
тип продукта28
счет-1
счет0
счет1
статус_платежа1
статус_платежа2

Вернуться к примеру

Ответ 200

{
"код": 0,
"message": "操作成功",
"данные": {
"список": [
      {
"id": 0,
"trade_no": "string",
"out_trade_no": "string",
"product_id": 0,
"product_type": 0,
"сумма": 0,
"unit_price": 0.1,
"total_fee": 0.1,
"goods_fee": 0.1,
"pay_fee": 0.1,
"discount_fee": 0.1,
"handling_fee": 0.1,
"refund_fee": 0.1,
"pm_id": 0,
"pm_title": "string",
"pm_logo": "string",
"статус": 0,
"title": "string",
"деталь": "струна",
"region_desc": "string",
"pay_at": "2019-08-24T14:15:22Z",
"pay_timestamp": 0,
"created_at": "2019-08-24T14:15:22Z",
"pay_fee_status": 0,
"счет": {}
      }
],
"пагинация": {
"Итого": 0,
"page_no": 0,
"page_size": 0,
"total_pages": 0
    }
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKуспехВ соответствии

Возвращаемая структура данных

POST Создать заказ

POST /ep/order/create

В связи с разнообразием доступных пакетов и различными конфигурациями каждого из них, пожалуйста, заполните параметры в соответствии с вашей реальной ситуацией. Неправильно заполненные параметры могут привести к ошибке при создании заказа.

примеры:

Обновление статического IP-адреса

{
"pid": Идентификатор пакета, // Получено из интерфейса /ep/product
"upids": "1,2,3,4,5,6", // Извлекает соответствующее поле id из интерфейса /ep/ip/get-static-ip.
"pm_id": 1 // Получено из API /ep/payment/list или /ep/payment/groups
  }

Приобретение статического IP-адреса для жилого дома

{
"pid": Идентификатор пакета, // Получено из интерфейса /ep/product
"pm_id": Идентификатор способа оплаты, // получен из API /ep/payment/list или /ep/payment/groups.
"region_list": "JP,15,333|DE,10,444|US,5,555" // Формат: Регион, Количество, ASN | Регион, Количество, ASN (номер ASN необязателен)
}

Покупка статического IP-адреса для дата-центра

{
"pid": Идентификатор пакета, // Получено из интерфейса /ep/product
"pm_id": Идентификатор способа оплаты, // получен из API /ep/payment/list или /ep/payment/groups.
"region_list": "JP,15,333|DE,10,444|US,5,555" // Формат: Регион, Количество, ASN | Регион, Количество, ASN (номер ASN необязателен)
}

Динамичные покупки жилого трафика

{
"pid": Идентификатор пакета, // Получено из интерфейса /ep/product
"pm_id": Идентификатор способа оплаты // Получается из API /ep/payment/list или /ep/payment/groups
}

Покупка статического вращающегося транспортного потока

{
"pid": Идентификатор пакета, // Получено из интерфейса /ep/product
"pm_id": Идентификатор способа оплаты // Получается из API /ep/payment/list или /ep/payment/groups
}

Динамическая покупка неограниченного трафика

{
"pid": 套餐ID, // 从 /ep/product 接口获取
"pm_id": 支付方式ID, // 从 /ep/pay/list 或 /ep/pay/groups 接口获取
"product_sku_bandwidth_id": идентификатор канала,
"product_sku_concurrency_id": идентификатор 并发规格
}

Пополнение баланса

{
"pid": Идентификатор пакета, // Получено из интерфейса /ep/product
"pm_id": Идентификатор способа оплаты, // получен из API /ep/payment/list или /ep/payment/groups.
"recharge_amount": Сумма пополнения
}

Параметры запроса тела

{
"pid": 0,
"upids": "string",
"сумма": 0,
"pm_id": 0,
"region_list": "string",
"coupon_sn": "string",
"use_invitation_registration_discount": true,
"renew_duration": 0,
"product_sku_bandwidth_id": 0,
"product_sku_concurrency_id": 0,
"product_sku_duration_id": 0,
"etd": 1,
"recharge_amount": 0
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектданикто
» pidтелоцелое числодаИдентификатор пакета берется из поля id, возвращаемого API /ep/product.
» upidsтелонитьнетСписок идентификаторов пакетов продления (разделенных запятыми) из поля`id`, возвращаемого API-функциями `/ep/user-product/list` или `/ep/ip/get-static-ip`.
количествотелочислонетКоличество новых посылок
pm_idтелоцелое числодаИдентификатор способа оплаты берется из поля`id`, возвращаемого API-интерфейсами `/ep/payment/list` или `/ep/payment/groups`.
» region_listтелонитьнетПри покупке статических IP-адресов укажите регион, количество и номер автономной системы (ASN). Формат: Регион, Количество, ASN.
» coupon_snтелонитьнетНомер купона
» use_invitation_registration_discountтелологическийнетВоспользуйтесь скидкой за регистрацию по приглашению.
» renew_durationтелоцелое числонетСрок продления — статический IP-адрес по желанию
» product_sku_bandwidth_idтелоцелое числонетПакет 11: Идентификатор пакета пропускной способности
» product_sku_concurrency_idтелоцелое числонетПакет 11: Идентификатор одновременного пакета
» product_sku_duration_idтелоцелое числонетТип пакета=11 Обязательно: Идентификатор спецификации продолжительности
» etdтелоцелое числонетМножитель продолжительности получается из пакета extension_of_time_days; 2 представляет собой количество дней, умноженное на 2, что приводит к увеличению цены.
» сумма_пополнениятелоцелое числонетПакет 3: Сумма пополнения

Вернуться к примеру

Ответ 200

{
"код": 0,
"message": "操作成功",
"данные": {
"id": 0,
"trade_no": "string",
"out_trade_no": "string",
"product_id": 0,
"product_type": 0,
"сумма": 0,
"unit_price": 0.1,
"total_fee": 0.1,
"goods_fee": 0.1,
"pay_fee": 0.1,
"discount_fee": 0.1,
"handling_fee": 0.1,
"refund_fee": 0.1,
"pm_id": 0,
"pm_title": "string",
"pm_logo": "string",
"статус": 0,
"title": "string",
"деталь": "струна",
"region_desc": "string",
"pay_at": "2019-08-24T14:15:22Z",
"pay_timestamp": 0,
"created_at": "2019-08-24T14:15:22Z",
"pay_fee_status": 0,
"счет": {
"имя": "строка",
"org_name": "string",
"first_name": "string",
"last_name": "string",
"телефон": "строка",
"email": "user@example.com",
"role_type": 0,
"vat_id": "string",
"address_country": "string",
"address_city": "string",
"address_line1": "string",
"address_line2": "string",
"address_postal_code": "string"
    }
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKСоздание успешноВ соответствии

Возвращаемая структура данных

Отменить заказ

POST /ep/order/close

Параметры запроса тела

{
"trade_no": "string"
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектданикто
» trade_noтелонитьданикто

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKОперация прошла успешно.Никто

Предварительная проверка заказа POST

POST /ep/order/check

Эта функция, вызываемая перед созданием заказа, предварительно просматривает цены, скидки, сведения о продлении IP-адреса и т. д., но фактически не создает заказ. Параметры идентичны параметрам в /ep/order/create .

Параметры запроса тела

{
"pid": 0,
"upids": "string",
"сумма": 1,
"pm_id": 0,
"region_list": "string",
"coupon_sn": "string",
"renew_duration": "1m",
"product_sku_bandwidth_id": 0,
"product_sku_concurrency_id": 0,
"product_sku_duration_id": 0,
"etd": 1,
"recharge_amount": 0
}

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
телотелообъектданикто
» pidтелоцелое числодаИдентификатор пакета
» upidsтелонитьнетОбновление IP-адреса: Список идентификаторов пользовательских пакетов, разделенных запятыми.
количествотелоцелое числонетКоличество закупаемых товаров
pm_idтелоцелое числодаИдентификатор способа оплаты
» region_listтелонитьнетПокупка статического IP-адреса: регион + количество, формат: идентификатор региона, количество
» coupon_snтелонитьнетНомер купона
» renew_durationтелонитьнетСрок действия IP-адреса: 1m = 1 месяц, 2m = 2 месяца, em = конец следующего месяца.
» product_sku_bandwidth_idтелоцелое числонетТип пакета = 11. Требуется: идентификатор спецификации полосы пропускания.
» product_sku_concurrency_idтелоцелое числонетТип пакета = 11. Требуется: идентификатор спецификации параллельного выполнения.
» product_sku_duration_idтелоцелое числонетТип пакета=11 Обязательно: Идентификатор спецификации продолжительности
» etdтелоцелое числонетМножитель продолжительности получается из пакета extension_of_time_days.
» сумма_пополнениятелочислонетТип пакета = 3 (обязательно): Сумма пополнения

Значение перечисления

свойствоценить
» renew_duration1m
» renew_duration2m
» renew_durationЭм

Вернуться к примеру

Ответ 200

{
"код": 0,
"message": "操作成功",
"данные": {
"product_id": 0,
"сумма": 0,
"discount_fee": 0.1,
"total_fee": 0.1,
"pay_fee": 0.1,
"product_type": 0,
"title": "string",
"деталь": "струна",
"ip_result": [
      {
"ip": "string",
"цена": 0.1,
"country_code": "string",
"текущее_время": "2019-08-24T14:15:22Z",
"renewal_time": "2019-08-24T14:15:22Z",
"страна": {}
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKПредварительная проверка прошла успешно.В соответствии

Возвращаемая структура данных

Управление платежами

Используйте команду GET для получения списка способов оплаты.

GET /ep/payment/list

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
trade_noзапроснитьнетНомер заказа — этот номер можно ввести, если для некоторых заказов требуется определенный способ оплаты.
валютазапроснитьнетВалюта

Вернуться к примеру

Ответ 200

{
"код": 0,
"message": "操作成功",
"данные": {
"список": [
      {
"id": 0,
"title": "string",
"логотип": "строка",
"группа": "строка",
"handling_rate": 0,
"handling_fee": 0,
"disabled": false,
"мин": 0,
"макс": 0
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKУспешно полученоВ соответствии

Возвращаемая структура данных

Используйте команду GET для получения списка способов оплаты.

GET /ep/payment/groups

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
trade_noзапроснитьнетНомер заказа — этот номер можно ввести, если для некоторых заказов требуется определенный способ оплаты.

Вернуться к примеру

Ответ 200

{
"код": 0,
"message": "操作成功",
"данные": {
"список": [
      {
"имя": "строка",
"логотипы": [
нулевой
],
"предметы": [
нулевой
        ]
      }
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKУспешно полученоВ соответствии

Возвращаемая структура данных

маркетинг

Получите коэффициент бонуса за пополнение счета

GET /ep/activity/balance-recharge-gift-ratio

Коэффициент бонуса за пополнение счета

Вернуться к примеру

Ответ 200

{
"код": 0,
"message": "操作成功",
"данные": {
"список": [
нулевой
    ]
  }
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKOKВ соответствии

Возвращаемая структура данных

продукт

Получить список товаров

GET /ep/product

Получите список доступных пакетов на текущем сайте и отфильтруйте его по типу, сроку действия и другим критериям.

Параметры запроса

имяРасположениетипНеобходимыйиллюстрировать
типзапросцелое числонетТипы пакетов см. в описании перечисления Product.type. Если тип не указан, будут возвращены все типы.
родительский продукт_типзапросцелое числонетТип родительского пакета, действителен только для типа=19 (продление IP-адреса), используется для фильтрации продуктовых линеек: 14=Центр обработки данных, 25=Жилой сектор.
время_днейзапростамнетФильтрация по сроку действия в днях, поддерживающая как отдельные значения, так и массивы, например, 30 /[30,90,365]
show_typeзапростамнетФильтрация по типу отображения, поддерживает одно значение или массив.

Подробное описание

type : Тип пакета, см. описание перечисления Product.type. Если не указано, будут возвращены все типы.

Значение перечисления

свойствоценить
родительский продукт_тип14
родительский продукт_тип25

Вернуться к примеру

Ответ 200

{
  "code": 0,
  "message": "操作成功",
  "data": [
    {
      "id": 0,
      "title": "string",
      "type": 0,
      "show_type": 0,
      "status": 0,
      "price": 0.1,
      "usd_price": 0.1,
      "price_hkd": 0.1,
      "original_price": 0.1,
      "original_usd_price": 0.1,
      "original_price_hkd": 0.1,
      "local_price": 0.1,
      "local_original_price": 0.1,
      "preferred_currency": "string",
      "support_currencies": "string",
      "flow_value": 0.1,
      "flow_give": 0.1,
      "balance_give": 0.1,
      "balance_value": 0.1,
      "time_validity": 0.1,
      "time_price": 0.1,
      "time_days": 0,
      "tip1": "string",
      "tip2": "string",
      "introduce": [
        "string"
      ],
      "region_list_id": 0,
      "renew_product_list": "string",
      "parent_product_type": 0,
      "total_count": 0,
      "remain_count": 0,
      "extension_of_time_days": [
        0
      ],
      "time_days_price_rate": 0.1,
      "desc": {
        "subtitle": "string",
        "flow_value": 0.1,
        "flow_give": 0.1,
        "balance_give": 0.1,
        "time_validity": 0.1,
        "time_price": 0.1,
        "tip1": "string",
        "tip2": "string",
        "introduce": [
          null
        ]
      },
      "sku": {
        "bandwidth_list": [
          null
        ],
        "duration_list": [
          null
        ],
        "concurrency_list": [
          null
        ]
      }
    }
  ]
}

Возвращает результаты

коды состоянияЗначение кода состоянияиллюстрироватьМодель данных
200OKOKВ соответствии

Возвращаемая структура данных

Модель данных

Типы продуктов

9

Типы пакетов: 9 динамических пакетов для домашнего трафика, 11 динамических пакетов IP-адресов для домашнего трафика, 14 статических пакетов IP-адресов для центров обработки данных, 25 статических пакетов IP-адресов для домашнего трафика.

свойство

имятипНеобходимыйограничениеКитайское имяиллюстрировать
анонимныйцелое числоЛОЖЬниктоТипы пакетов: 9 динамических пакетов для домашнего трафика, 11 динамических пакетов IP-адресов для домашнего трафика, 14 статических пакетов IP-адресов для центров обработки данных, 25 статических пакетов IP-адресов для домашнего трафика.

Значение перечисления

свойствоценить
анонимный9
анонимный11
анонимный14
анонимный25

responseCode

200

Коды состояния: 200 — Успех, 3 — Недействительный app_key

свойство

имятипНеобходимыйограничениеКитайское имяиллюстрировать
анонимныйцелое числоЛОЖЬниктоКоды состояния: 200 — Успех, 3 — Недействительный app_key

УспехОтвет

{
"код": 0,
"message": "操作成功",
"данные": {}
}

свойство

имятипНеобходимыйограничениеКитайское имяиллюстрировать
кодцелое числоЛОЖЬниктоникто
сообщениенитьЛОЖЬниктоникто
данныеобъектЛОЖЬниктоникто

Заказ

{
"id": 0,
"trade_no": "string",
"out_trade_no": "string",
"product_id": 0,
"product_type": 0,
"сумма": 0,
"unit_price": 0.1,
"total_fee": 0.1,
"goods_fee": 0.1,
"pay_fee": 0.1,
"discount_fee": 0.1,
"handling_fee": 0.1,
"refund_fee": 0.1,
"pm_id": 0,
"pm_title": "string",
"pm_logo": "string",
"статус": 0,
"title": "string",
"деталь": "струна",
"region_desc": "string",
"pay_at": "2019-08-24T14:15:22Z",
"pay_timestamp": 0,
"created_at": "2019-08-24T14:15:22Z",
"pay_fee_status": 0,
"счет": {
"имя": "строка",
"org_name": "string",
"first_name": "string",
"last_name": "string",
"телефон": "строка",
"email": "user@example.com",
"role_type": 0,
"vat_id": "string",
"address_country": "string",
"address_city": "string",
"address_line1": "string",
"address_line2": "string",
"address_postal_code": "string"
  }
}

свойство

имятипНеобходимыйограничениеКитайское имяиллюстрировать
идентификаторцелое числоЛОЖЬниктоИдентификатор заказа
trade_noнитьЛОЖЬниктоВнутренний номер заказа
out_trade_noнитьЛОЖЬниктоВнешний номер заказа
продукт_idцелое числоЛОЖЬниктоИдентификатор пакета
тип продуктацелое числоЛОЖЬниктоТипы упаковки перечислены в нумерации типов продукции.
количествоцелое числоЛОЖЬниктоКоличество закупаемых товаров
цена за единицу товарачисло (с плавающей запятой)ЛОЖЬниктоцена за единицу товара
общая_платачисло (с плавающей запятой)ЛОЖЬниктоОбщая стоимость заказа (без учета скидок, включая плату за обработку)
goods_feeчисло (с плавающей запятой)ЛОЖЬниктоЦена товара (с учетом скидок, за исключением платы за обработку заказа)
плата_число (с плавающей запятой)ЛОЖЬниктоФактическая сумма платежа (включая скидки и комиссию за обработку)
скидка_платачисло (с плавающей запятой)ЛОЖЬниктоСумма скидки
комиссия за обработкучисло (с плавающей запятой)ЛОЖЬниктоплата за обработку
возврат_платычисло (с плавающей запятой)ЛОЖЬниктоСумма возврата
pm_idцелое числоЛОЖЬниктоИдентификатор 支付方式(来自 /ep/pay/list)
pm_titleнитьЛОЖЬниктоНазвание способа оплаты
pm_logoнитьЛОЖЬниктоURL-адрес логотипа способа оплаты
статусцелое числоЛОЖЬниктоСтатус заказа
заголовокнитьЛОЖЬниктоНазвание пакета
детальнитьЛОЖЬниктоОписание упаковки
region_descнитьЛОЖЬниктоРегиональные характеристики
pay_atстрока(дата-время)ЛОЖЬниктоВремя оплаты
pay_timestampцелое числоЛОЖЬниктоотметка времени платежа
создано_встрока(дата-время)ЛОЖЬниктоВремя создания
статус_платежацелое числоЛОЖЬниктоСтатус длинной/короткой позиции: 0 обычных, 1 длинная позиция (переплата), 2 короткие позиции
счетобъектЛОЖЬниктоИнформация для выставления счета (пригодна только для заказов с онлайн-оплатой)
" имянитьЛОЖЬниктоПолное имя
» org_nameнитьЛОЖЬниктоНазвание компании
" имянитьЛОЖЬниктоникто
" фамилиянитьЛОЖЬниктоникто
" телефоннитьЛОЖЬниктоникто
" электронная почтастрока(email)ЛОЖЬниктоникто
» role_typeцелое числоЛОЖЬникто1 человек, 2 компании
» vat_idнитьЛОЖЬниктоИдентификационный номер налогоплательщика
» address_countryнитьЛОЖЬниктоникто
» адрес_городнитьЛОЖЬниктоникто
" Адресная строка 1нитьЛОЖЬниктоникто
» address_line2нитьЛОЖЬниктоникто
» адрес_почтовый_коднитьЛОЖЬниктоникто

OrderCheckResult

{
"product_id": 0,
"сумма": 0,
"discount_fee": 0.1,
"total_fee": 0.1,
"pay_fee": 0.1,
"product_type": 0,
"title": "string",
"деталь": "струна",
"ip_result": [
    {
"ip": "string",
"цена": 0.1,
"country_code": "string",
"текущее_время": "2019-08-24T14:15:22Z",
"renewal_time": "2019-08-24T14:15:22Z",
"страна": {
"name_zh_cn": "string",
"флаг": "строка",
"square_flag": "string"
      }
    }
  ]
}

Заказать результаты предварительной проверки

свойство

имятипНеобходимыйограничениеКитайское имяиллюстрировать
продукт_idцелое числоЛОЖЬниктоИдентификатор пакета
количествоцелое числоЛОЖЬниктоколичество
скидка_платачисло (с плавающей запятой)ЛОЖЬниктоСумма скидки
общая_платачисло (с плавающей запятой)ЛОЖЬниктоОбщая сумма заказа
плата_число (с плавающей запятой)ЛОЖЬниктоФактическая сумма платежа
тип продуктацелое числоЛОЖЬниктоТипы упаковки
заголовокнитьЛОЖЬниктоНазвание пакета
детальнитьЛОЖЬниктоОписание упаковки
ip_result[объект]ЛОЖЬниктоРезультаты массового продления IP-адресов (отображаются только при продлении IP-адресов)
» ipнитьЛОЖЬниктоникто
" ценачисло (с плавающей запятой)ЛОЖЬниктоникто
» country_codeнитьЛОЖЬниктоникто
» текущее_времястрока(дата-время)ЛОЖЬниктоникто
» время_возобновлениястрока(дата-время)ЛОЖЬниктоникто
" странаобъектЛОЖЬниктоникто
»» name_zh_cnнитьЛОЖЬниктоникто
»» флагинитьЛОЖЬниктоURL циклического флага
»» квадратный_флагнитьЛОЖЬниктоURL квадратного флага

Продукт

{
  "id": 0,
  "title": "string",
  "type": 0,
  "show_type": 0,
  "status": 0,
  "price": 0.1,
  "usd_price": 0.1,
  "price_hkd": 0.1,
  "original_price": 0.1,
  "original_usd_price": 0.1,
  "original_price_hkd": 0.1,
  "local_price": 0.1,
  "local_original_price": 0.1,
  "preferred_currency": "string",
  "support_currencies": "string",
  "flow_value": 0.1,
  "flow_give": 0.1,
  "balance_give": 0.1,
  "balance_value": 0.1,
  "time_validity": 0.1,
  "time_price": 0.1,
  "time_days": 0,
  "tip1": "string",
  "tip2": "string",
  "introduce": [
    "string"
  ],
  "region_list_id": 0,
  "renew_product_list": "string",
  "parent_product_type": 0,
  "total_count": 0,
  "remain_count": 0,
  "extension_of_time_days": [
    0
  ],
  "time_days_price_rate": 0.1,
  "desc": {
    "subtitle": "string",
    "flow_value": 0.1,
    "flow_give": 0.1,
    "balance_give": 0.1,
    "time_validity": 0.1,
    "time_price": 0.1,
    "tip1": "string",
    "tip2": "string",
    "introduce": [
      "string"
    ]
  },
  "sku": {
    "bandwidth_list": [
      {
        "id": 0,
        "value": 0,
        "price": 0.1,
        "price_usd": 0.1,
        "price_hkd": 0.1
      }
    ],
    "duration_list": [
      {
        "id": 0,
        "value": 0,
        "price": 0.1,
        "price_usd": 0.1,
        "price_hkd": 0.1
      }
    ],
    "concurrency_list": [
      {
        "id": 0,
        "value": 0,
        "price": 0.1,
        "price_usd": 0.1,
        "price_hkd": 0.1
      }
    ]
  }
}

свойство

имятипНеобходимыйограничениеКитайское имяиллюстрировать
идентификаторцелое числоЛОЖЬниктоИдентификатор пакета
заголовокнитьЛОЖЬниктоосновной заголовок пакета
типцелое числоЛОЖЬниктоТипы упаковки
show_typeцелое числоЛОЖЬниктоТипы отображения: 1. Обычный; 2. Рекомендация высокой ценности; 3. Недоступен для покупки (требуется персонализация); 4. Пробный.
статусцелое числоЛОЖЬниктоСтатус: 1 объект в списке, 0 исключено из списка
ценачисло (с плавающей запятой)ЛОЖЬниктоцена в юанях
цена в долларах СШАчисло (с плавающей запятой)ЛОЖЬниктоЦена в долларах США
цена_хкдчисло (с плавающей запятой)ЛОЖЬниктоцена в гонконгских долларах
оригинальная_ценачисло (с плавающей запятой)ЛОЖЬниктоПервоначальная цена (юани)
оригинальная_цена_в_долларах СШАчисло (с плавающей запятой)ЛОЖЬниктоПервоначальная цена (доллары США)
оригинальная_цена_хкдчисло (с плавающей запятой)ЛОЖЬниктоПервоначальная цена (гонконгские доллары)
локальная_ценачисло (с плавающей запятой)ЛОЖЬниктоЛокализованное ценообразование (зависит от предпочтительной валюты)
локальная_оригинальная_ценачисло (с плавающей запятой)ЛОЖЬниктоЛокализованная первоначальная цена (зависит от предпочтительной валюты)
предпочтительная_валютанитьЛОЖЬниктоРекомендуемая валюта для отображения, например, USD/CNY/HKD
поддержка_валютнитьЛОЖЬниктоПоддерживаемые валюты, разделенные запятыми, например, USD, CNY.
flow_valueчисло (с плавающей запятой)ЛОЖЬниктоСтандартный объем данных (ГБ) для этого тарифного плана
flow_giveчисло (с плавающей запятой)ЛОЖЬниктоБесплатный объем данных (ГБ)
balance_giveчисло (с плавающей запятой)ЛОЖЬниктоБонусная сумма за пополнение баланса
баланс_значениечисло (с плавающей запятой)ЛОЖЬниктоСумма пополнения
time_validityчисло (с плавающей запятой)ЛОЖЬниктоСтандартный срок действия пакетных предложений
цена временичисло (с плавающей запятой)ЛОЖЬниктоЦена за IP-адрес в пакетных предложениях
время_днейцелое числоЛОЖЬниктоСрок действия в днях, например, 30/90/180/365
tip1нитьЛОЖЬниктоОписание тега 1
tip2нитьЛОЖЬниктоОписание тега 2
входить[нить]ЛОЖЬниктоСписок текстовых описаний
region_list_idцелое числоЛОЖЬниктоИдентификатор региона
renew_product_listнитьЛОЖЬниктоСписок идентификаторов возобновляемых пакетов (разделенных запятыми)
родительский продукт_типцелое числоЛОЖЬниктоТип родительского пакета (действителен при type=19): 14 или 25
общее_количествоцелое числоЛОЖЬниктоОбщий запас, 0 означает отсутствие ограничений.
оставшееся_количествоцелое числоЛОЖЬниктоОстаток запасов
продление_временных_дней[целое число]ЛОЖЬниктоСписок множителей длительности пуст или содержит только 1, что указывает на то, что он не поддерживается.
time_days_price_rateчисло (с плавающей запятой)ЛОЖЬниктоФактор ценообразования, зависящий от продолжительности, цена × (1 + (кратное - 1) × ставка)
Я собираюсь.объектЛОЖЬниктоИнформация об описании упаковки
субтитрынитьЛОЖЬниктосубтитры
» flow_valueчисло (с плавающей запятой)ЛОЖЬниктоникто
» flow_giveчисло (с плавающей запятой)ЛОЖЬниктоникто
» balance_giveчисло (с плавающей запятой)ЛОЖЬниктоникто
» time_validityчисло (с плавающей запятой)ЛОЖЬниктоникто
» time_priceчисло (с плавающей запятой)ЛОЖЬниктоникто
» тип1нитьЛОЖЬниктоникто
» tip2нитьЛОЖЬниктоникто
" представлять[нить]ЛОЖЬниктоникто
артикулобъектЛОЖЬниктоПараметры спецификации (возвращаются при type=11)
» bandwidth_list[объект]ЛОЖЬниктоСписок технических характеристик полосы пропускания
"" идентификаторцелое числоЛОЖЬниктоникто
"" ценитьцелое числоЛОЖЬниктоЗначение пропускной способности (Мбит/с)
"" ценачисло (с плавающей запятой)ЛОЖЬниктоникто
цена_долларов СШАчисло (с плавающей запятой)ЛОЖЬниктоникто
цена_хкдчисло (с плавающей запятой)ЛОЖЬниктоникто
» duration_list[объект]ЛОЖЬниктоСписок технических характеристик продолжительности
"" идентификаторцелое числоЛОЖЬниктоникто
"" ценитьцелое числоЛОЖЬниктоПродолжительность (дни)
"" ценачисло (с плавающей запятой)ЛОЖЬниктоникто
цена_долларов СШАчисло (с плавающей запятой)ЛОЖЬниктоникто
цена_хкдчисло (с плавающей запятой)ЛОЖЬниктоникто
» concurrency_list[объект]ЛОЖЬниктоСписок спецификаций параллельного выполнения
"" идентификаторцелое числоЛОЖЬниктоникто
"" ценитьцелое числоЛОЖЬниктоПараллелизм
"" ценачисло (с плавающей запятой)ЛОЖЬниктоникто
цена_долларов СШАчисло (с плавающей запятой)ЛОЖЬниктоникто
цена_хкдчисло (с плавающей запятой)ЛОЖЬниктоникто

Пагинация

{
"Итого": 0,
"page_no": 0,
"page_size": 0,
"total_pages": 0
}

свойство

имятипНеобходимыйограничениеКитайское имяиллюстрировать
общийцелое числоЛОЖЬниктоникто
страница_нетцелое числоЛОЖЬниктоникто
размер страницыцелое числоЛОЖЬниктоникто
total_pagesцелое числоЛОЖЬниктоникто