Назад в блог
BananaBanana Teamapix402agents

API генерации через x402: оплата за запрос без регистрации

Генерация изображений, видео и речи по протоколу x402: агент платит в USDC на Base за каждый вызов без регистрации и API-ключей. Цены от $0.03.

API генерации через x402: оплата за запрос без регистрации

x402 — это открытый платежный протокол, превращающий давно забытый HTTP-код 402 в работающий пейволл: сервер отвечает на запрос статусом 402 Payment Required со структурированными условиями оплаты, клиент подписывает авторизацию перевода в стейблкоинах, повторяет запрос и получает результат. Без регистрации аккаунта, без API-ключей и без ежемесячных подписок. Coinbase передала протокол в Linux Foundation в апреле 2026 года, и к моменту начала операционной деятельности x402 Foundation в консорциум вошли 40 организаций, среди которых AWS, Google, Stripe, Visa и Mastercard. Это больше не нишевый криптоэксперимент.

Короткий ответ: эндпоинт x402 сервиса BananaBanana находится по адресу https://bananabanana.pro/api/x402. Отправьте POST с { "tool": "...", "arguments": {...} }, получите ответ 402 с точной стоимостью для переданных параметров, оплатите ее в USDC на сети Base и повторите запрос. Генерация изображений стоит от $0.03, видео — от $0.30, синтез речи — $0.01 за каждые 200 символов. Деньги за изображения и речь списываются только тогда, когда файл действительно создан.

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

Последнее предложение — это как раз та деталь, которую часто упускают в статьях про x402, поэтому мы разберем ее подробно. Списать средства просто. Не списывать оплату за неудачные генерации — вот где архитектура становится по-настоящему интересной.

Как устроен процесс оплаты

Всего четыре шага, причем три из них ваш HTTP-клиент выполняет автоматически.

  1. Агент отправляет обычный POST-запрос с JSON. Заголовков оплаты нет.
  2. Сервер возвращает 402 с массивом accepts. Требование платежа содержит точную сумму в неделимых единицах (atomic units), адрес получателя, контракт USDC, сеть и срок действия.
  3. Клиент подписывает разрешение на перевод по стандарту EIP-3009 на указанную сумму и передает его в Base64 в заголовке X-PAYMENT.
  4. Тот же запрос отправляется повторно, теперь уже с заголовком. Сервер передает подпись фасилитатору для проверки, выполняет генерацию и после этого запрашивает у фасилитатора исполнение транзакции on-chain.

Подпись — это не транзакция в блокчейне. Это оффчейн-авторизация, которая превращается в реальный перевод только при отправке в сеть. Именно поэтому возможна двухфазная схема: сначала валидация, затем генерация, в самом конце — расчет.

Практический нюанс: спецификация v2 переименовывает заголовки в PAYMENT-SIGNATURE и PAYMENT-RESPONSE, но большинство существующих клиентов все еще используют X-PAYMENT, поэтому мы поддерживаем этот заголовок. Если вы работаете через официальный TypeScript SDK, эта разница для вас незаметна.

Схематичная иллюстрация четырехэтапного цикла запроса между агентом и платным API, редакционный стиль

Сколько стоит один вызов

Цены рассчитываются за генерацию и сообщаются до того, как вы что-либо подписываете. Итоговая сумма зависит от параметров (изображение 4K стоит дороже 1K), поэтому ответ 402 оценивает именно ваш конкретный запрос.

ИнструментМодельСтоимость
generate_imageNano Banana 2 Lite$0.03 (только 1K)
generate_imageNano Banana 2$0.03 – $0.13 (от 512 до 4K)
generate_imageNano Banana Pro$0.11 – $0.20 (от 1K до 4K)
generate_videoGemini Omni Flash$0.10 за секунду, от 3 до 10 с, звук включен
generate_videoСемейство Veo 3.1$0.10 – $4.40 за клип
generate_speechGemini Flash TTS$0.01 за начатые 200 символов

Трехсекундный клип в Omni со звуком обойдется в $0.30. Это самый доступный вариант реального видеогенератора в списке. Veo дает более высокую детализацию, но для 8-секундного ролика в 1080p со звуком стоимость возрастает на порядок — для чернового варианта это не всегда оправдано.

Актуальные тарифы можно получить напрямую: GET https://bananabanana.pro/api/x402 бесплатно возвращает полный каталог без необходимости оплаты.

Монеты разного размера рядом с небольшими силуэтами картин в рамках и кинопленки, редакционная иллюстрация

Два запроса: полный цикл

Вот наглядный пример работы через curl, за исключением шага подписи (эту часть берет на себя ваша клиентская библиотека x402).

# 1. Запрос стоимости. Без заголовка оплаты: получаем расчет.
curl -s -X POST https://bananabanana.pro/api/x402 \
  -H 'Content-Type: application/json' \
  -d '{"tool":"generate_image","arguments":{"prompt":"a paper boat on still water at dawn","model":"nano-banana-pro","resolution":"2048"}}'
{
  "x402Version": 1,
  "error": "Payment required: $0.11 for generate_image.",
  "accepts": [{
    "scheme": "exact",
    "network": "base",
    "maxAmountRequired": "110000",
    "resource": "https://bananabanana.pro/api/x402",
    "payTo": "0x7c0e9abd1c48380e27ab5bfced1be54f23ce773f",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "maxTimeoutSeconds": 300,
    "extra": { "name": "USD Coin", "version": "2" }
  }]
}

Два конверта на линии: первый возвращается с замком, второй с сургучной печатью проходит через открытую рамку

Подписываем параметры, отправляем запрос с заголовком и во втором ответе получаем готовый файл:

{
  "paid_usd": 0.11,
  "result": {
    "status": "completed",
    "images": [{ "url": "https://bananabanana.pro/api/files/..." }]
  }
}

Две важные детали для тех, кто строит свой сервер x402: поле maxAmountRequired указывается в неделимых единицах. У USDC 6 знаков после запятой, поэтому $0.11 превращается в 110000. Поле extra.name должно строго совпадать с тем, что возвращает метод name() смарт-контракта USDC (в Base mainnet это USD Coin, а в Base Sepolia — USDC), поскольку это значение используется при расчете domain separator в EIP-712. Несовпадение приведет к ошибке проверки подписи без внятного описания причины.

Генерация видео: предоплата и возвратные токены

Изображения и речь генерируются в рамках одного HTTP-запроса. Схема простая: проверка подписи → генерация → расчет. Списание происходит только при успешном создании файла. Если запрос отклонен фильтром контента или возник таймаут, подпись просто не отправляется в блокчейн, и плательщик ничего не теряет.

С видео так поступить нельзя: рендер в Veo или Omni занимает от 1 до 10 минут. Держать открытое HTTP-соединение невозможно, а запущенный процесс генерации на стороне Google нельзя отменить (их метод interactions.cancel возвращает 501 UNIMPLEMENTED). Поэтому для видео оплата списывается сразу, возвращается job_id, а результат опрашивается через бесплатный эндпоинт.

Что происходит, если уже оплаченный видеоклип отклоняется модерацией?

Вы получаете возвратный токен (refund token) на полную сумму вида bb_rf_…, действующий 90 дней. Его можно передать в параметре refund_token при любом следующем вызове. Если клип за $1.30 был отклонен фильтром безопасности, следующий запрос обойдется на $1.30 дешевле. Если стоимость новой задачи меньше номинала токена, остаток возвращается новым токеном.

Это не on-chain возврат в USDC, и мы говорим об этом прямо. Наш сервер не хранит приватных ключей и физически не может инициировать исходящие переводы — только принимать или отклонять входящие. Для безопасности сервиса x402 отсутствие приватных ключей на сервере — это преимущество.

Этот ролик сгенерирован через описанный эндпоинт за $0.30: модель Gemini Omni Flash, длительность 3 секунды, промпт — непрерывный кадр с растворением чернил в воде в стеклянном резервуаре с мягким боковым светом и низким гулом помещения. Звуковая дорожка синтезируется самой моделью.

Как AI-агент находит эндпоинт

Если агент знает точный URL, автообнаружение не требуется. Для остальных агентов сервис публикует манифест по адресу /.well-known/x402/.well-known/x402.json).

Манифест перечисляет каждый инструмент как отдельный ресурс с параметрами оплаты, сетью в формате CAIP-2, адресом получателя и фасилитатором. В блоке accepts манифеста указана минимальная стоимость инструмента, а не максимальная. Подписать платеж вслепую по манифесту все равно нельзя, так как точная цена зависит от параметров, но публикация минимальной цены защищает агентов от случайных переплат.

Каталоги также проверяют эндпоинты пустыми POST-запросами. Наш сервер возвращает на них 402 с подсказкой по вызову инструментов.

Карточный каталог в картотеке с одним выдвинутым ящиком, откуда светится метка эндпоинта, редакционная иллюстрация

Что выбрать: x402 или аккаунт?

Две двери в одну комнату: одна открывается механическим манипулятором с монетой, другая — рукой с ключами

Оба пути ведут к одним и тем же генераторам. Выбор зависит от архитектуры вашего агента.

Параметрx402Аккаунт (MCP или веб)
НастройкаКошелек с балансомРегистрация по email, затем API-ключ или OAuth
Оплата вызоваПодпись, оплата, готовоСписание с предоплаченного баланса
Бонусы на депозитНет5% от $50+, 10% от $100+, еще 10% по промокоду
История генерацийНе сохраняетсяПолная история, сохранение job ID
Редактирование видеоНедоступноedit_video, пошаговое уточнение в диалоге
Для чего подходитРазовые вызовы, полная автономия агентаПостоянная работа, контроль расходов, итерации

Главное отличие — бонусная программа. Пополнение на $100 с промокодом дает $120 на баланс (эффективная скидка 17%), чего в x402 нет из-за отсутствия баланса аккаунта. С другой стороны, автономному агенту с кошельком не нужен email: он может начать генерацию за один раунд-трип.

Если вам удобнее работать через аккаунт, наш MCP-сервер поддерживает Claude Code, Cursor, VS Code и другие клиенты Streamable HTTP, а генератор доступен прямо в браузере. Те же модели, те же цены, просто другой способ входа.

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

Нужен ли аккаунт Coinbase для оплаты?

Нет. Подходит любой EVM-кошелек с USDC на сети Base. Расчет проводит фасилитатор, регистрироваться у него тоже не требуется.

Что происходит, если генерация заблокирована фильтром безопасности?

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

Какие сети и токены поддерживаются?

USDC в основной сети Base (Base mainnet), схема exact. Манифест на /.well-known/x402 содержит идентификатор сети CAIP-2 и адрес смарт-контракта токена.

Можно ли отредактировать видео, сгенерированное через x402?

Через x402 — нет. Редактирование привязано к генерациям внутри аккаунта (edit_video в MCP). Через x402 доступна генерация новых видео с нуля.

Сколько действует выставленная цена?

Окно для подписи составляет 300 секунд (параметр maxTimeoutSeconds). Сами базовые цены соответствуют тарифам сайта и не меняются во время сессии.

Попробуйте сгенерировать изображение за $0.03 через рабочий эндпоинт. Если ваш клиент умеет подписывать разрешения EIP-3009, до готового изображения вас отделяют буквально четыре строчки кода.

apix402agents