SMMCode AI

HTTP API

Те же пять модулей, что и в кабинете, доступны запросом. Оплата идёт с общего рублёвого баланса по тем же ценам, что и в интерфейсе.

API временно закрыт. Документация ниже актуальна — доступ откроется в ближайшее время.

Начало работы

1. Получите ключ

Ключи создаются в кабинете, раздел «API». Ключ показывается один раз — сохраните его сразу.

2. Передайте его в заголовке

Authorization: Bearer ВАШ_КЛЮЧ — в каждом запросе.

3. Пополните баланс

Списания идут с общего счёта. Не хватает средств — запрос отклоняется до обращения к поставщику.

curl -X POST https://smmcode.com/api/v1/images/generate \
  -H "Authorization: Bearer ВАШ_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"закат над морем","num_images":1}'

Как приходит ответ

Часть модулей работает мгновенно, часть — задачей.

200 Сразу

Текст и озвучка отдают результат в том же ответе. Списание уже проведено и видно в протоколе.

202 Задачей

Изображения, видео и музыка отвечают идентификатором задачи. Результат забирайте через /api/v1/tasks/{id}. Не выполнилась — деньги вернутся автоматически.

КодЧто означает
200 Готово, результат в ответе
202 Принято в работу, забирайте по идентификатору задачи
401 Ключ не передан или не действует
402 Недостаточно средств на балансе
422 Ошибка в параметрах запроса
429 Слишком часто — снизьте темп
503 Модуль временно недоступен, средства не списаны

Методы

Восемь адресов покрывают все пять модулей.

GET /api/v1/models Список моделей

Возвращает доступные модели с ценами. С него удобно начинать: коды моделей нужны во всех остальных запросах.

GET /api/v1/balance Остаток на балансе

Текущий баланс в рублях. Проверяйте его перед пачкой задач — при нехватке средств запрос отклоняется до обращения к поставщику.

POST /api/v1/chat/completions Языковые модели

Формат сообщений привычный: массив ролей system, user и assistant.

ПараметрТипОбязателенОписание
messages array да Сообщения. У каждого role и content.
model string нет Код модели. Пусто — модель по умолчанию.
temperature number нет От 0 до 2. Ниже — точнее, выше — свободнее.
max_tokens integer нет Предел длины ответа.
POST /api/v1/voice/speech Синтез речи

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

ПараметрТипОбязателенОписание
input string да Текст для озвучки, до 20 000 знаков.
voice_id string да Идентификатор голоса.
model string нет Код модели озвучки.
format string нет mp3, wav, ogg или aac.
emotion string нет neutral, calm, cheerful, energetic или sad.
POST /api/v1/images/generate Генерация изображения

Создаёт изображение по описанию. Можно передать ссылки на образцы — тогда правка идёт от них. Отвечает кодом 202.

ПараметрТипОбязателенОписание
prompt string да Описание кадра, до 4 000 знаков.
model string нет Код модели.
num_images integer нет От 1 до 4.
image_urls array нет До четырёх ссылок на образцы.
POST /api/v1/video/generate Генерация видео

Создаёт ролик по описанию, по кадру-референсу или переходом между двумя кадрами. Отвечает кодом 202.

ПараметрТипОбязателенОписание
prompt string да Описание сцены, до 4 000 знаков.
model string нет Код модели.
duration integer нет 4, 6 или 8 секунд.
aspect_ratio string нет 16:9, 9:16 или Auto.
resolution string нет 720p, 1080p или 4k.
image_urls array нет До трёх ссылок на кадры.
POST /api/v1/music/generate Генерация музыки

Создаёт трек по описанию. В своём режиме можно передать стиль и название. Отвечает кодом 202.

ПараметрТипОбязателенОписание
prompt string да Описание трека, до 5 000 знаков.
model string нет Код модели.
custom_mode boolean нет Свой режим: стиль и название задаются вручную.
instrumental boolean нет Без вокала.
style string нет Жанр и настроение.
title string нет Название трека.
GET /api/v1/tasks/{id} Состояние задачи

Забирает результат асинхронной задачи. Идентификатор приходит в ответе на запуск.

Что важно знать

Ключ — это доступ к деньгам

Каждый запрос списывает с вашего баланса. Не публикуйте ключ во фронтенде и в репозитории — отозвать его можно в кабинете.

Цены те же, что в интерфейсе

Наценки за обращение по API нет. Актуальные значения — в каталоге моделей и в ответе /models.

Каждое обращение в журнале

Адрес, код ответа и время видны в кабинете. Списания — там же, в протоколе, с остатком до и после.

Ключ выдаётся в кабинете

Регистрация занимает минуту. Пополнить баланс можно позже — бесплатные текстовые модели работают сразу.

Создать аккаунт
Уже есть аккаунт? Войти