Skip to main content
POST
cURL
POST /v1/images/generations Endpoint text-to-image использует тело запроса application/json. Передайте prompt, держите HTTP-запрос открытым и прочитайте готовое изображение из data[0].b64_json в том же ответе.
Используйте https://www.bettertoken.ai/v1 как Base URL. API Key BetterToken передается через Authorization: Bearer YOUR_API_KEY.
В Playground справа можно заполнить Authorization и тело запроса, а затем отправить запрос напрямую на https://www.bettertoken.ai/v1/images/generations.
Не помещайте API keys во frontend-код браузера, Git-репозитории, тикеты, скриншоты или логи. Для server-side proxy calls храните ключи только в переменных окружения сервера или secret manager.

Быстрый старт с curl

Используйте https://www.bettertoken.ai/v1 как Base URL и отправьте запрос на https://www.bettertoken.ai/v1/images/generations:

Рекомендуемые значения

Передавайте эти поля явно в каждом запросе:
Чтобы сгенерировать несколько изображений, отправляйте несколько независимых запросов. Не рассчитывайте на один запрос с n > 1.

Рекомендуемые размеры

size задает ожидаемое соотношение сторон и уровень размера. Фактические пиксели в ответе могут быть сопоставлены или скорректированы сервером. Используйте размеры декодированного изображения, а не принудительную обрезку до запрошенного значения.

Сохранение изображения

Успешный ответ следует OpenAI-совместимой форме image response:
Прочитайте data[0].b64_json и сохраните его как base64 image content. Ответ может содержать дополнительные поля, например revised_prompt; клиент должен разрешать такие поля. Всегда задавайте output_format: "png". Затем сохраняйте декодированное изображение как .png без проверки file headers.

Пример JavaScript (Node.js)

Не рассчитывайте, что output_format: "jpeg" или output_format: "webp" сразу вернет JPEG или WebP-файл. Текущий endpoint может по-прежнему вернуть PNG. Если продукту нужен JPEG или WebP, сначала получите PNG и конвертируйте его в своем коде.

Поток ответа

Endpoint синхронный. После отправки POST /images/generations держите текущий HTTP-запрос открытым до ответа сервера. При успешной генерации содержимое изображения возвращается в data[0].b64_json. Endpoint не возвращает task_id; отдельного status query или endpoint для скачивания результата нет.

Timeout и повторные попытки

  • Задавайте timeout HTTP-клиента в несколько минут.
  • Повторяйте transport errors, 408, 409, 425, 429 и 5xx.
  • Не повторяйте автоматически 400, 401, отсутствующие параметры и некорректные запросы.
  • Используйте exponential backoff, например 3s, 8s, 15s.
  • Если дубли изображений недопустимы, записывайте собственный request ID перед retry.

Обработка ошибок

Ошибка обычно возвращается как JSON. При отображении сообщения сначала прочитайте error.message, затем message, а после этого HTTP status text.

Чек-лист подключения

  • Base URL — https://www.bettertoken.ai/v1.
  • Header содержит Authorization: Bearer YOUR_API_KEY.
  • Request использует application/json и POST /images/generations.
  • modelgpt-image-2, response_formatb64_json, output_formatpng, n1.
  • size выбран из рекомендованных значений, например 1024x1024.
  • HTTP client допускает ожидание генерации в течение нескольких минут.

Смежные документы

Авторизации

Authorization
string
header
обязательно

Use your BetterToken API Key as a bearer token. Do not expose API keys in frontend browser code, screenshots, logs, tickets, or Git repositories.

Тело

application/json
model
enum<string>
по умолчанию:YOUR_MODEL_ID
обязательно

固定使用 YOUR_MODEL_ID。

Доступные опции:
YOUR_MODEL_ID
Пример:

"YOUR_MODEL_ID"

prompt
string
обязательно

图片生成提示词。

Пример:

"一张未来感 AI 产品海报,浅色背景,玻璃质感,干净构图,高级科技感"

n
integer
по умолчанию:1

推荐固定为 1。多张图片建议发起多次独立请求。

Требуемый диапазон: 1 <= x <= 1
Пример:

1

size
enum<string>
по умолчанию:1024x1024

图片尺寸和比例档位。auto 为自动;1024x1024 和 2048x2048 为 1:1;1536x1024 为 3:2;1024x1536 为 2:3;1536x1152 为 4:3;1152x1536 为 3:4;2048x1152 和 3840x2160 为 16:9;2160x3840 为 9:16。实际返回像素可能由服务端映射或调整,客户端应以解码后的真实图片尺寸为准。

Доступные опции:
auto,
1024x1024,
1536x1024,
1024x1536,
1536x1152,
1152x1536,
2048x2048,
2048x1152,
3840x2160,
2160x3840
Пример:

"1024x1024"

response_format
enum<string>
по умолчанию:b64_json

推荐固定为 b64_json,便于稳定保存图片。

Доступные опции:
b64_json
Пример:

"b64_json"

output_format
enum<string>
по умолчанию:png

推荐固定为 png。不要依赖 jpeg 或 webp 直接返回对应格式。

Доступные опции:
png
Пример:

"png"

Ответ

Image generation result.

OpenAI-compatible image response. Clients should read data[0].b64_json and allow additional fields such as revised_prompt.

created
integer
Пример:

1710000000

data
object[]