Перейти к содержимому

Разработчикам

API: заказы из вашего софта

Оформляйте заказы, проверяйте статусы, читайте баланс и список инструментов программно. Каждый запрос — POST на один эндпоинт с ключом, каждый ответ — JSON. Ниже — рецепты на те действия, которыми вы реально будете пользоваться.

POST · JSON Ключ в кабинете

Настройка

Ключ, эндпоинт, формат

Ключ

Ваш API-ключ — на странице API в кабинете. Передаётся параметром key в каждом запросе.

Эндпоинт

Один URL: https://smmpanelus.com/api/v2. Метод — POST. Точный адрес продублирован на странице API.

Формат

Действие выбирается параметром action; ответ всегда в JSON. Поле service — это ID инструмента.

Рецепты

Запросы, которыми вы будете пользоваться

add

Новый заказ

ID инструмента (service), публичная ссылка и количество. В ответ — номер заказа.

Запрос

POST https://smmpanelus.com/api/v2

key       = YOUR_API_KEY
action    = add
service   = 1024
link      = https://your-network.com/your-post
quantity  = 1000

Ответ

{ "order": 23501 }
add

Заказ с постепенной подачей

Добавьте runs и interval (минуты), чтобы растянуть выдачу — там, где инструмент поддерживает.

Запрос

POST https://smmpanelus.com/api/v2

key       = YOUR_API_KEY
action    = add
service   = 1024
link      = https://your-network.com/your-post
quantity  = 1000
runs      = 5
interval  = 30

Ответ

{ "order": 23502 }
status

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

Передайте номер заказа — получите статус, стартовый счётчик, списание и остаток.

Запрос

key=YOUR_API_KEY&action=status&order=23501

Ответ

{
  "charge":      "0.90",
  "start_count": "1200",
  "status":      "In progress",
  "remains":     "300",
  "currency":    "USD"
}
status

Несколько заказов сразу

Передайте номера через запятую в orders — до 100 за раз.

Запрос

key=YOUR_API_KEY&action=status&orders=23501,23502,23503

Ответ

{
  "23501": { "status": "Completed", "remains": "0" },
  "23502": { "status": "Partial",   "remains": "150" },
  "23503": { "error": "Incorrect order ID" }
}
services

Список инструментов

Полный каталог с ID, лимитами и параметрами. Кешируйте его — он меняется реже заказов.

Запрос

key=YOUR_API_KEY&action=services

Ответ

[
  {
    "service":  1024,
    "name":     "…",
    "type":     "Default",
    "category": "…",
    "min":      "50",
    "max":      "100000",
    "refill":   true,
    "cancel":   true
  }
]
balance

Баланс

Текущий баланс и валюта аккаунта.

Запрос

key=YOUR_API_KEY&action=balance

Ответ

{ "balance": "100.84", "currency": "USD" }
refill

Рефилл

Запросить добавление — там, где инструмент его предлагает. Статус — отдельным действием.

Запрос

key=YOUR_API_KEY&action=refill&order=23501
key=YOUR_API_KEY&action=refill_status&refill=901

Ответ

{ "refill": "901" }
{ "status": "Completed" }

Ответы и ошибки

Читайте поле error

Успешный ответ содержит данные действия; при проблеме приходит объект с полем error. Проверяйте его прежде, чем доверять остальному.

# error example
{ "error": "Incorrect service ID" }

Практики

Несколько привычек

Берегите ключ как пароль. Не коммитьте в публичный репозиторий; при утечке — перевыпустите. Безопасность.

Кешируйте список инструментов. Он меняется реже заказов — не тяните его на каждый запрос.

Проверяйте error. Сначала смотрите на ошибку, потом разбирайте полезные данные.

Ровный темп и HTTPS. Не шлите запросы быстрее, чем нужно, и всегда обращайтесь по HTTPS.

FAQ

Частые вопросы

Где мой API-ключ?
На странице API в кабинете. Передавайте его параметром key и держите приватным.
Какой эндпоинт?
https://smmpanelus.com/api/v2, метод POST. Точный адрес также показан на странице API.
Почему поле называется service, а не tool?
service — имя поля API, сохранённое для совместимости; это ID инструмента платформы. Бэкенд мы не меняем.
Как заказывать объёмом?
Шлите по add на заказ и проверяйте до 100 статусов сразу через orders. Без кода удобен массовый заказ.
Есть ли лимит запросов?
Держите разумный темп и проверяйте статусы пачками, а не по одному. Если упёрлись в лимит — притормозите и повторите.
Что делать при «Частично» по API?
Так же, как в кабинете: неиспользованная сумма возвращается на баланс. Статусы.

API в деталях

Разработка на API SmmPanelUS

API SmmPanelUS позволяет оформлять заказы, проверять их статус, получать список инструментов и читать баланс из вашего софта — так можно вести объёмную работу, не открывая кабинет. Каждый запрос — это POST на один эндпоинт с авторизацией по API-ключу, а каждый ответ приходит в JSON. Если вы уже работали со стандартным API такого рода, всё будет знакомо; если нет — рецепты выше покрывают те несколько действий, которыми вы реально будете пользоваться.

Ключ и эндпоинт

Ваш API-ключ находится на странице API в кабинете, и вы передаёте его параметром key в каждом запросе. Эндпоинт — один URL на smmpanelus.com, а нужное действие выбирается параметром action: add — оформить заказ, status — проверить, services — список инструментов, balance — баланс, refill — там, где инструмент поддерживает. Учтите: поле, называющее позицию, в API — service; это ID инструмента платформы. Имя поля сохранено для совместимости, хотя на платформе мы называем это инструментами.

Оформление и проверка заказов

Чтобы оформить заказ, отправьте add с ID инструмента, публичной ссылкой и количеством — в ответ придёт номер нового заказа. Чтобы проверить, отправьте status с этим номером и читайте статус, стартовый счётчик, списанную сумму и остаток. Несколько заказов можно проверить сразу, передав список через запятую. Заказы проходят те же статусы, что и в кабинете, поэтому результат «Частично» или «Отменён» по API ведёт себя ровно так же, как в аккаунте: неиспользованная сумма возвращается на баланс.

Хорошие практики

Относитесь к API-ключу как к паролю: держите приватным, не коммитьте в публичный репозиторий и перевыпускайте при утечке. Кешируйте список инструментов, а не запрашивайте его на каждый заказ — он меняется куда реже ваших заказов. Обрабатывайте ошибки, проверяя поле error в ответе, прежде чем доверять остальному, и не шлите запросы быстрее, чем нужно — ровный разумный темп держит всё надёжным. Всегда обращайтесь к эндпоинту по HTTPS.

Любой язык, умеющий POST

Поскольку API — это обычный HTTP с form-параметрами и ответами в JSON, вызывать его можно из любого языка, умеющего отправить POST — никакого SDK ставить не нужно, ничего привязанного к фреймворку. Нескольких строк на вашем языке достаточно, чтобы оформить заказ и прочитать результат, поэтому его легко встроить в существующий процесс, задачу по расписанию или небольшой скрипт. Если вы вшиваете его во что-то большее, сохраняйте полученные номера заказов, чтобы потом проверять статус, и храните их рядом с тем, чему они соответствуют у вас. Эта одна привычка — запоминать номер заказа, который вернул add, — и превращает разовый запрос в систему, на которую можно положиться.

Ключ и полная справка по полям — на странице безопасности и на странице API в кабинете. Если термин незнаком — глоссарий объяснит, а статусы заказов описывают, что значит каждый ответ status.

Возьмите ключ и начните

Создайте аккаунт — API-ключ появится в кабинете на странице API.

Каталог открывается внутри
Доступ — по аккаунту
Создать аккаунт