Skip to main content

SmartBuddy API (1.0.0)

Документация, примеры, вопросы и ответы

Личный кабинет, настройки, баланс

Ограничение до 3-х запросов в секунду, для увеличения - напишите нам.

Host API: https://api.smartbuddy.ru

Модели генерации текста (function calling, vision): полный список моделей

Модели генерации изображений: stable-diffusion, dall-e-3, playground, flux-1-schnell, flux-1-dev, flux-1-pro, flux-1.1-pro, gpt-image-1, nano-banana, nano-banana-pro, nano-banana-2

Модели генерации embeddings: text-embedding-3-large, text-embedding-3-small, text-embedding-ada-002

По всем вопросам и предложениям пишите на support@mail.smartbuddy.ru. Поможем.

ChatCompletions

Запрос к нейросети (текст, vision, functions, structured outputs)

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: application/json
required
max_tokens
number >= 0
Default: 4096

Максимальное количество токенов, которое нейросеть может использовать для ответа

required
Array of objects non-empty

Массив сообщений

Array (non-empty)
required
string or Array of objects

Текст сообщения

role
required
string
Enum: "assistant" "system" "user"

Роль

model
required
string (ModelEnum)
Enum: "amazon/nova-lite-v1" "amazon/nova-micro-v1" "amazon/nova-pro-v1" … 83 more

Список моделей

stream
boolean
Default: false

Потоковый вывод

temperature
number [ 0 .. 2 ]
Default: 0.7

Температура

Responses

Response Schema: application/json
required
Array of objects non-empty

Ответы

Array (non-empty)
finish_reason
required
string
Example: "stop"

Причина, по которой нейросеть завершила генерацию текста, некоторые ИИ имеют свои причины, уточняйте в их документации

message
required
string
Example: "1. Орбитальная станция Космонавт - в честь космонавтов, совершивших полет на МКС.\\n2. Станция Солнечный свет - символизирует энергию и свет, которые мы получаем от Солнца.\\n3. Межгалактическая станция Звездный путь - название, которое может вызвать ассоциации с популярным сериалом о космосе.\\n4. Станция Новый рубеж - отражает стремление человечества к исследованию новых границ Вселенной.\\n5. Станция Космический дом - название, которое подчеркивает, что космическая станция является домом для космонавтов во время их пребывания в космосе."

Сообщение

model
required
string
Example: "anthropic/claude-3.5-sonnet"

Модель

required
object

Количество использованных токенов и стоимость

completion_tokens
required
integer
Example: "171"

Количество токенов на выходе нейросети (ответ)

cost
required
number <float>
Example: "2.49"

Стоимость запроса в рублях

prompt_tokens
required
integer
Example: "30"

Количество токенов на вход нейросети (запрос)

total_tokens
required
integer
Example: "201"

Общее количество токенов, использованного нейросетью

Request samples

Content type
application/json
{
  • "model": "amazon/nova-lite-v1",
  • "temperature": 0.7,
  • "max_tokens": 4096,
  • "stream": false,
  • "messages": [
    • {
      }
    ]
}

Response samples

Content type
application/json
{
  • "choices": [
    • {
      }
    ],
  • "model": "anthropic/claude-3.5-sonnet",
  • "usage": {
    • "cost": 2.49,
    • "prompt_tokens": "30",
    • "completion_tokens": "171",
    • "total_tokens": "201"
    }
}

Embeddings

Генерация embeddings

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: application/json
required
encoding_format
string
Default: "float"
Enum: "base64" "float"
Example: "float"
required
string (string) or Array of array (strings)

Строка для генерации embeddings

One of
string (string)

Строка для генерации embeddings

model
required
string (TextEmbeddingModel)
Enum: "text-embedding-3-large" "text-embedding-3-small" "text-embedding-ada-002"
Example: "text-embedding-3-large"

Модели для генерации embeddings

Responses

Response Schema: application/json
required
Array of objects (Embedding)

Список embedding, сгенерированных моделью

Array
embedding
required
Array of numbers

Embedding вектор

index
required
integer
object
required
string
Value: "embedding"
model
required
string

Модель, которая сгенерировала embedding

object
required
string
Value: "list"
required
object

The usage information for the request.

prompt_tokens
required
integer

Количество токенов на вход нейросети (запрос)

total_tokens
required
integer

Общее количество токенов, использованного нейросетью

Request samples

Content type
application/json
{
  • "model": "text-embedding-3-large",
  • "input": "This is a test.",
  • "encoding_format": "float"
}

Response samples

Content type
application/json
{
  • "data": [
    • {
      }
    ],
  • "model": "string",
  • "object": "list",
  • "usage": {
    • "prompt_tokens": 0,
    • "total_tokens": 0
    }
}

ImagesGenerations

Генерация изображения.

Параметры по умолчанию:

  • n=1; для gpt-image-1 можно запросить несколько результатов параметром n
  • response_format=b64_json
header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: application/json
required
model
required
string (ImageModel)
Enum: "dall-e-3" "flux-1-dev" "flux-1-pro" … 11 more
Example: "dall-e-3"

Список моделей генерации изображений

n
integer [ 1 .. 2147483647 ]
Default: 1

Для gpt-image-1 баланс проверяется на весь запрошенный пакет. Оплачиваются фактически полученные изображения; их суммарная цена возвращается в usage.cost. Некорректный или превышающий n пакет не оплачивается.

prompt
required
string

Текстовое описание изображения

quality
any
Default: "low"
Enum: "high" "low" "medium"

Качество единой модели gpt-image-1: low, medium или high. По умолчанию используются качество low и размер 1024x1024. Цена определяется выбранным качеством и размером. Значение auto не поддерживается.

ImageSizeStableDiffusionEnum (string) or ImageSizeDalle3Enum (string) or ImageSizePlaygroundEnum (string) or ImageSizeFluxEnum (string) or ImageSizeGptImageEnum (string)
Default: "1024x1024"
Example: "1024x1024"

Разрешение изображения

One of
string (ImageSizeStableDiffusionEnum)
Default: "1024x1024"
Enum: "1024x1024" "1152x896" "1216x832" … 6 more

Размер изображения для модели Stable Diffusion

Responses

Response Schema: application/json
created
required
integer
Example: "1708501063"

Время создания

required
Array of objects or objects non-empty

Сгенерированные изображения

Array (non-empty)
Any of
b64_json
required
string <byte>
Example: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABAAAAAQACAIAAADwf7zUAAEAAElEQVR4nGT925Jk25IsCKmZjenuEZG59"

Изображение PNG в формате base64

url
string

Ссылка на изображение.

required
object

Статистика запроса

cost
required
number <float>
Example: "2.49"

Суммарная пользовательская стоимость фактически полученных изображений в рублях.

Request samples

Content type
application/json
{
  • "model": "dall-e-3",
  • "prompt": "string",
  • "size": "1024x1024",
  • "quality": "high",
  • "n": 1
}

Response samples

Content type
application/json
{
  • "created": "1708501063",
  • "data": [
    • {
      }
    ],
  • "usage": {
    • "cost": 2.49
    }
}

Images Edits

Редактирование изображений моделью gpt-image-1. По умолчанию используются quality=low, size=1024x1024 и n=1. Стоимость определяется выбранным качеством, размером и фактическим количеством результатов. Некорректный или превышающий n пакет не оплачивается. Mask не поддерживается (ошибка 422). Документация OpenAI.

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: multipart/form-data
required
required
string or Array of strings

Одно исходное изображение или массив референсов; каждый файл не более 2 МБ. Все референсы используются при редактировании.

One of
string <binary>

Одно исходное изображение или массив референсов; каждый файл не более 2 МБ. Все референсы используются при редактировании.

mask
string <binary>

Параметр mask не поддерживается. Запрос с mask отклоняется с ошибкой 422.

model
required
string (ImagesEditsModel)
Value: "gpt-image-1"
Example: "gpt-image-1"

Модель с поддержкой редактирования изображений

n
integer [ 1 .. 2147483647 ]
Default: 1

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

prompt
required
string

Текстовое описание изображения

quality
any
Default: "low"
Enum: "high" "low" "medium"

Качество изображения gpt-image-1: low, medium или high. По умолчанию используется качество low. Значение auto передавать нельзя.

response_format
string
Default: "b64_json"
Enum: "b64_json" "url"
size
string (ImageSizeGptImageEnum)
Default: "1024x1024"
Enum: "1024x1024" "1024x1536" "1536x1024"

Размер изображения для модели gpt-image-1

Responses

Response Schema: application/json
created
required
integer
Example: "1708501063"

Время создания

required
Array of objects or objects non-empty

Сгенерированные изображения

Array (non-empty)
Any of
b64_json
required
string <byte>
Example: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABAAAAAQACAIAAADwf7zUAAEAAElEQVR4nGT925Jk25IsCKmZjenuEZG59"

Изображение PNG в формате base64

url
string

Ссылка на изображение.

required
object

Статистика запроса

cost
required
number <float>
Example: "2.49"

Суммарная пользовательская стоимость фактически полученных изображений в рублях.

Request samples

curl --location --request POST 'https://api.smartbuddy.ru/v1/images/edits' \
--header 'Authorization: Bearer API_TOKEN' \
--form 'model="gpt-image-1"' \
--form 'size="1024x1024"' \
--form 'quality="low"' \
--form 'image=@"image.jpg"' \
--form 'prompt="Нарисуй похожее"'

Response samples

Content type
application/json
{
  • "created": "1708501063",
  • "data": [
    • {
      }
    ],
  • "usage": {
    • "cost": 2.49
    }
}

MindMap

Генерация Mind Map при помощи нейросети.

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: application/json
required
output_format
string (OutputFormatTool)
Default: "svg"
Enum: "png" "svg"
Example: "svg"

Формат изображения

prompt
required
string

Текстовое описание

Responses

Response Schema: application/json
required
Array of objects non-empty

Сгенерированные изображения

Array (non-empty)
b64_json
required
string <byte>
Example: "data:image/svg+xml;base64,iVBORw0KGgoAAAANSUhEUgAABAAAAAQACAIAAADwf7zUAAEAAElEQVR4nGT925Jk25IsCKmZjenuEZG59"

The base64-encoded JSON of the generated image

Request samples

Content type
application/json
{
  • "prompt": "string",
  • "output_format": "svg"
}

Response samples

Content type
application/json
{
  • "data": [
    • {
      }
    ]
}

Генерация графиков

Генерация графиков при помощи нейросети.

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: application/json
required
output_format
string (OutputFormatTool)
Default: "svg"
Enum: "png" "svg"
Example: "svg"

Формат изображения

prompt
required
string

Текстовое описание

type
required
string (ChartType)
Enum: "bar" "doughnut" "line" … 3 more
Example: "pie"

Тип графика

Responses

Response Schema: application/json
required
Array of objects non-empty

Сгенерированные изображения

Array (non-empty)
b64_json
required
string <byte>
Example: "data:image/svg+xml;base64,iVBORw0KGgoAAAANSUhEUgAABAAAAAQACAIAAADwf7zUAAEAAElEQVR4nGT925Jk25IsCKmZjenuEZG59"

The base64-encoded JSON of the generated image

Request samples

Content type
application/json
{
  • "prompt": "string",
  • "type": "pie",
  • "output_format": "svg"
}

Response samples

Content type
application/json
{
  • "data": [
    • {
      }
    ]
}

Генерация диаграмм

Генерация диаграмм (ER, Ганта, классов, состояния, блок-схемы и т.д) при помощи нейросети.

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: application/json
required
output_format
string (OutputFormatTool)
Default: "svg"
Enum: "png" "svg"
Example: "svg"

Формат изображения

prompt
required
string

Текстовое описание

type
required
string (DiagramType)
Enum: "activity" "class" "code2flow" … 7 more
Example: "pie"

Тип диаграммы (подробнее)

Responses

Response Schema: application/json
required
Array of objects non-empty

Сгенерированные изображения

Array (non-empty)
b64_json
required
string <byte>
Example: "data:image/svg+xml;base64,iVBORw0KGgoAAAANSUhEUgAABAAAAAQACAIAAADwf7zUAAEAAElEQVR4nGT925Jk25IsCKmZjenuEZG59"

The base64-encoded JSON of the generated image

Request samples

Content type
application/json
{
  • "prompt": "string",
  • "type": "pie",
  • "output_format": "svg"
}

Response samples

Content type
application/json
{
  • "data": [
    • {
      }
    ]
}

Async: Suno (v3.5, v4, v4.5)

Генерация музыкальных треков. Асинхронное API. Будет создана задача и будет присвоен уникальный номер (id).

Для получения результата отправьте GET-запрос на /v1/jobs/{id}.

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema: application/json
required
model
required
string (SunoVersionModel)
Enum: "v3.5" "v4" "v4.5"
Example: "v4"

Модель Suno

prompt
required
string

Текст песни или подсказки по созданию музыки

tags
required
string
Example: "Винтажный джаз-лаундж, классические стандарты, плавные соло на трубе, контрабас и знойный женский вокал."

Музыкальные стили через запятую (Винтажный джаз-лаундж, классические стандарты и т.д)

title
required
string
Example: "Свобода"

Название песни

Responses

Response Schema: application/json
created_at
required
string
Example: "2025-03-11T09:02:53.000000Z"

Дата и время создания

id
required
string <uuid>
Example: "9e67bc43-bdc7-4d5b-a68a-cacc51cf2b0c"

Идентификатор задачи (для получения результата отправьте GET-запрос на /v1/jobs/{id}.)

status
required
string (JobStatusEnum)
Enum: "done" "error" "pending"
Example: "pending"

Статус задачи

Request samples

Content type
application/json
{
  • "model": "v4",
  • "prompt": "string",
  • "title": "Свобода",
  • "tags": "Винтажный джаз-лаундж, классические стандарты, плавные соло на трубе, контрабас и знойный женский вокал."
}

Response samples

Content type
application/json
{
  • "id": "9e67bc43-bdc7-4d5b-a68a-cacc51cf2b0c",
  • "status": "pending",
  • "created_at": "2025-03-11T09:02:53.000000Z"
}

Async: Midjourney (v5+)

Генерация изображений через Midjourney. Асинхронное API. Будет создана задача и будет присвоен уникальный номер (id).

Для получения результата отправьте GET-запрос на /v1/jobs/{id}.

Поля model и prompt обязательны; версии по умолчанию нет. Для styleReference можно передать общедоступный URL или файл JPEG/PNG до 10 МиБ (см. Request Body schema multipart/form-data ниже). Для characterReference используйте URL. Для каждой версии предусмотрена отдельная схема oneOf по полю model с доступными ей параметрами. Указанные defaults применяются системой генерации, когда соответствующие параметры не переданы.

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Request Body schema:
required
One of
aspectRatio
string (Midjourney81AspectRatio) ^[1-9][0-9]*:[1-9][0-9]*$
Default: "1:1"
Example: "16:9"

Соотношение ширины к высоте в виде двух положительных целых чисел через двоеточие.

Примеры:

  • 1:1 — квадрат;
  • 5:4, 3:2, 7:4, 16:9, 2:1 — горизонтальные;
  • 9:16, 1:2, 2:3 — вертикальные.

Это примеры, а не закрытый список значений.

callback_url
string <uri>

URL для уведомления о результате задачи.

chaos
integer [ 0 .. 100 ]
Default: 30

Разнообразие результатов генерации.

model
required
string
Value: "8.1"
Example: "8.1"
no
string
Default: ""

Элементы, которые не следует включать в изображение.

prompt
required
string

Текстовое описание изображения.

styleReference
string <uri>

Общедоступный URL изображения стиля.

stylize
integer [ 0 .. 1000 ]
Default: 1000

Степень художественной стилизации.

tile
boolean
Default: false

Бесшовный повторяющийся узор. В multipart передавайте 1 или 0.

weird
integer [ 0 .. 3000 ]
Default: 0

Добавление необычных элементов.

Responses

Response Schema: application/json
created_at
required
string
Example: "2025-03-11T09:02:53.000000Z"

Дата и время создания

id
required
string <uuid>
Example: "9e67bc43-bdc7-4d5b-a68a-cacc51cf2b0c"

Идентификатор задачи (для получения результата отправьте GET-запрос на /v1/jobs/{id}.)

status
required
string (JobStatusEnum)
Enum: "done" "error" "pending"
Example: "pending"

Статус задачи

Request samples

Content type
Example
{
  • "prompt": "string",
  • "no": "",
  • "chaos": 30,
  • "stylize": 1000,
  • "weird": 0,
  • "tile": false,
  • "callback_url": "http://example.com",
  • "model": "8.1",
  • "aspectRatio": "16:9",
  • "styleReference": "http://example.com"
}

Response samples

Content type
application/json
{
  • "id": "9e67bc43-bdc7-4d5b-a68a-cacc51cf2b0c",
  • "status": "pending",
  • "created_at": "2025-03-11T09:02:53.000000Z"
}

Async: Получить результат

Получение результата генераций Suno, Midjourney.

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Responses

Response Schema: application/json
created_at
required
string
Example: "2025-03-11T09:02:53.000000Z"

Дата и время создания

id
required
string <uuid>
Example: "9e67bc43-bdc7-4d5b-a68a-cacc51cf2b0c"

Идентификатор задачи

result
required
Array of strings non-empty
Example: "https://smartbuddy.ru/content/jobs/9e67bc43-bdc7-4d5b-a68a-cacc51cf2b0c/67cffcd6ac24d.mp3"

Массив ссылок на результат

status
required
string (JobStatusEnum)
Enum: "done" "error" "pending"
Example: "pending"

Статус задачи

Request samples

curl --location --request GET 'https://api.smartbuddy.ru/v1/jobs/{id}' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer API_TOKEN'

Response samples

Content type
application/json
{}

Баланс

Получить текущий баланс в рублях

header Parameters
Authorization
string
Example: Bearer API_TOKEN

API-ключ для авторизации запросов (сгенерировать API-ключ)

Responses

Response Schema: application/json
balance
required
number <float>
Example: "302.49"

Текущий баланс в рублях

Request samples

curl --location --request GET 'https://api.smartbuddy.ru/v1/balance' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer API_TOKEN'

Response samples

Content type
application/json
{
  • "balance": 302.49
}