Перейти к основному содержимому
ПЕРСОНА 2 ВАРИАНТ - ПОСТАВЩИКИ API

Продавайте свой API AI-агентам.

AI-агенты не могут заполнить форму кредитной карты. Они могут заплатить вам в USDC. Blockchain0x делает этот один вызов API.

БОЛЬ

Ваш API был разработан для людей. Ваши вызывающие теперь агенты.

Следующее десятилетие доходов от API не будет поступать от регистрации людей. Он будет поступать от AI-агентов, вызывающих API от имени своих пользователей, часто программно и без участия человека. Эти агенты не могут использовать вашу существующую кассу. Они не могут заполнить форму кредитной карты, не могут создать аккаунт, не могут кликнуть по подтверждающему электронному письму, не могут запомнить пароль.

Что они могут сделать, так это прочитать ответ 402 Payment Required, извлечь сумму USDC и получателя из тела JSON, оплатить на Base и повторно сделать вызов с доказательством оплаты. Это вся форма API-коммерции, управляемой агентами. Модель затрат (оплата за вызов в стейблкоине) также гораздо лучше подходит для использования агентами, чем подписки на основе карт: карты не работают при транзакциях менее $1; USDC на Base стоит цент в газе; возвраты не происходят между машинами.

Blockchain0x - это мост. Перечислите маршруты, за которые вы хотите взимать плату, в таблице цен и смонтируйте адаптер x402. Когда неоплаченный вызов попадает на платный маршрут, адаптер возвращает 402, описывающий, что именно нужно заплатить. Агент платит на Base и повторяет вызов с заголовком X-Payment; адаптер проверяет это, и ваш обработчик запускается. Вы собираете USDC и запускаете свой API, как и прежде. Ничего не меняется в вашей бизнес-логике; слой выставления счетов работает параллельно.

402 ТРЕБУЕТСЯ ПЛАТЕЖ

Код состояния HTTP наконец-то имеет применение.

HTTP 402 was reserved in the original spec for "future use" and never standardized. For thirty years it sat unused while the internet built per-account subscription billing on top of 200/401/403. With Coinbase's x402 protocol, 402 finally has a standard implementation: any API that needs payment-before-it-runs can return a structured 402, and any client that understands the spec can pay and retry.

ВАШ API ВОЗВРАЩАЕТ ЭТО ТЕЛО 402, КОГДА ЗВОНК НЕ БЫЛ ОПЛАЧЕН
HTTP/1.1 402 Payment Required
Content-Type: application/json

{
  "resource": "POST /api/expensive-operation",
  "accepts": [
    {
      "scheme": "exact-usdc",
      "network": "mainnet",
      "chainId": "eip155:8453",
      "payToAddress": "0xYourAgentWalletAddress",
      "amountWeiUsdc": "500000",
      "paymentRequestId": "pr_demo",
      "maxAgeSeconds": 60
    }
  ]
}

Что означает требование accepts[]

  • scheme - схема оплаты. exact-usdc означает точную сумму USDC на цепочке EVM. Клиент сопоставляет это перед оплатой.
  • network / chainId - цепочка для завершения (основная сеть - Base, CAIP-2 eip155:8453). Миграция может ссылаться на обе сети, перечислив два требования в accepts.
  • payToAddress / amountWeiUsdc - кошелек получателя и точная сумма в базовых единицах USDC (500000 = 0.50 USDC, 6 десятичных знаков). Клиент проверяет оба перед оплатой.
  • paymentRequestId - связывает оплату с этой котировкой. Адаптер отклоняет X-Payment, который ссылается на другой paymentRequestId, чем указанный маршрут.
  • maxAgeSeconds - насколько свежей должна быть оплата. Оплата, старше этого окна, отклоняется, и вызывающий должен оплатить снова.

x402 это машина-к-машине: клиент, осведомленный о x402, читает accepts, оплачивает выбранное требование в цепочке, а затем повторно выдает запрос с заголовком X-Payment, который проверяет адаптер. Клиент, который не говорит на x402, просто получает 402 и не получает результата, что является правильным исходом (вызов не был оплачен). В этом потоке нет хостинговой страницы оформления заказа; платеж завершается программно кошельком вызывающего.

ШАБЛОН АДАПТЕРА

Одна таблица цен. Три языка. Одна форма.

Вы устанавливаете один адаптер и даете ему таблицу цен, ключевую по МЕТОДУ и пути. Он ограничивает только маршруты, которые вы перечисляете; ваш обработчик никогда не видит неоплаченный вызов, потому что, когда он выполняется, заголовок X-Payment уже был проверен. Форма идентична для Python, TypeScript и Go - проводной формат X-Payment одинаков, поэтому сервер Go принимает заголовки, созданные клиентом Python.

PYTHON (FLASK)
from flask import Flask
from blockchain0x import Client
from blockchain0x_x402.server import x402_before_request_factory, PricingEntry

sdk = Client()  # reads BLOCKCHAIN0X_API_KEY
app = Flask(__name__)

# Only routes named in the pricing table are gated.
app.before_request(x402_before_request_factory(
    sdk=sdk,
    pricing={
        "POST /api/expensive-operation": PricingEntry(
            amount_usdc="0.50",
            pay_to_address="0xYourAgentWalletAddress",
            payment_request_id="pr_demo",
        ),
    },
))

@app.route("/api/expensive-operation", methods=["POST"])
def expensive_operation():
    return run_the_work()  # only runs after X-Payment verifies
TYPESCRIPT (EXPRESS)
import express from "express";
import { createClient } from "@blockchain0x/node";
import { createX402Middleware } from "@blockchain0x/x402/server/express";

const sdk = createClient({ apiKey: process.env.BLOCKCHAIN0X_API_KEY! });
const app = express();

// Only routes named in the pricing table are gated.
app.use(createX402Middleware({
  sdk,
  pricing: {
    "POST /api/expensive-operation": {
      amountUsdc: "0.50",
      payToAddress: "0xYourAgentWalletAddress",
      paymentRequestId: "pr_demo",
    },
  },
}));

app.post("/api/expensive-operation", async (req, res) => {
  res.json(await runTheWork());  // req.x402Payment holds the verified payment
});
GO (NET/HTTP)
import (
  "net/http"
  x402 "tosh-labs/blockchain0x-x402-go"
)

func main() {
  pricing := map[string]x402.PricingEntry{
    "POST /api/expensive-operation": {
      AmountUSDC:       "0.50",
      PayToAddress:     "0xYourAgentWalletAddress",
      PaymentRequestID: "pr_demo",
    },
  }

  // serverSdk is your Blockchain0x Go SDK client.
  h := x402.Middleware(x402.ServerOptions{Sdk: serverSdk, Pricing: pricing})(
    http.HandlerFunc(expensiveOperation))
  http.Handle("/api/expensive-operation", h)
  http.ListenAndServe(":8080", nil)
}

Мы поставляем серверные адаптеры для Express и Fastify (Node), ASGI (Starlette и FastAPI) и Flask (Python), а также net/http для Go. Для других фреймворков тело 402 и заголовок X-Payment являются обычным HTTP, который помощники в @blockchain0x/x402 создают и разбирают - напишите проверку в идиоме вашего стека. Пакеты x402 для Ruby и JVM опубликованы для клиентской стороны.

VS STRIPE CHECKOUT

Когда обращаться к каждому инструменту.

Stripe - это правильный инструмент для человеческой кассы. Blockchain0x - это правильный инструмент для кассы агентов. Они решают разные проблемы и часто находятся рядом на одном API.

РазмерностьBlockchain0xStripe Checkout
ПокупательЛюбой HTTP-клиент (человек или AI-агент)Человек за браузером
Требуется авторизация перед оплатойНет - первый вызов возвращает 402 с требованиями к оплатеДа - электронная почта + форма карты
Скорость расчета5 секунд (USDC на Base)2-7 дней (карточные сети)
Риск возврата платежаНет (USDC окончателен)До 120 дней окна возврата
Экономика затрат на транзакциюРаботает за $0.01-$0.10 за вызов (газ Base + наша комиссия)Комиссии по картам делают транзакции менее $1 невыгодными
ВозвратыВручную - ваш код отправляет USDC обратно на адрес плательщикаАвтоматизировано через панель управления Stripe
Международная поддержкаТот же кошелек, любая страна, без дополнительной настройкиЛицензирование по странам, конвертация валют, региональные правила
Лучше всего дляПрограммное использование API, управляемое агентамиЧек-аут с участием человека (регистрация SaaS, электронная коммерция)

Шаблон, на котором останавливаются большинство поставщиков API: оставьте Stripe для человеческого процесса регистрации (ваша панель управления, ваша страница подписки); добавьте Blockchain0x на границе API для программного доступа агентов. Адаптер x402 только ограничивает маршруты, которые вы указали в его таблице цен, поэтому ваши маршруты для людей, аутентифицированных через Stripe, остаются нетронутыми. Укажите агентов на платные маршруты, а людей на остальные, и обе аудитории обслуживаются одним и тем же кодом API.

КАКОЙ ПЛАН ПОДХОДИТ

Профессиональный для раннего трафика. Бизнес, когда журналы аудита становятся обязательными.

Поставщики API почти всегда начинают с Pro с первого дня: Free только для чтения, а адаптер x402 требует доступа к API для проверки и завершения платежей, а также вебхуки для их отслеживания. API с высоким трафиком переходят в категорию Business по мере роста месячного объема. См. страницу с ценами для точной стоимости на агента и расположения тарифов.

  • Free: полезно только для dashboard и изучения metadata. Только чтение, поэтому adapter не может проводить платежи.
  • Pro: по умолчанию для монетизации живого API. Полный доступ к API, webhooks, экспортам.
  • Business: когда нужны audit logs для compliance или более высокие лимиты API.
Смотрите полную цену
ЧАСТО ЗАДАВАЕМЫЕ

Пять вопросов провайдера API.

Могу ли я использовать Stripe вместе с Blockchain0x для одного и того же API?

Да, и многие поставщики API делают это. Схема: сохраняйте свой существующий поток регистрации людей на основе Stripe и перечисляйте только маршруты, ориентированные на агентов, в таблице цен x402. Адаптер ограничивает именно эти маршруты; все, что не в таблице (включая маршруты, которые вызывают ваши клиенты, аутентифицированные через Stripe), проходит прямо, не затрагивая. Если вы хотите один маршрут для обоих, проверьте свой собственный API-ключ в обработчике и пропустите платный путь для аутентифицированных вызывающих. Обе аудитории получают то, что хотят, без блокировки одного пути другим.

Что если AI-агент платит, а затем выходит до повторной попытки вызова?

Платеж все еще действителен в цепочке; он просто не используется. Кошелек агента показывает успешный перевод USDC на ваш адрес. С точки зрения агента он потерял USDC; с вашей точки зрения, вы получили оплату за вызов, который никогда не был выполнен. Это редко на практике (клиент x402 повторяет попытку сразу после оплаты), но если вы хотите быть осторожным, вы можете отслеживать проверенные платежи, которые никогда не привели к завершенному вызову, и вернуть USDC самостоятельно с помощью payments.create, оплатив адрес оригинального плательщика. Нет отдельной конечной точки для возврата - возврат - это просто платеж в другом направлении.

Как мне версионировать мой API и изменения цен?

Каждая запись в таблице цен относится к маршруту, поэтому разные маршруты могут взимать разные цены. Для версионирования рекомендуется открывать конечные точки v2 рядом с v1 с новыми ценами как новыми записями в таблице цен; клиенты видят новую сумму в своем первом ответе 402 на маршруте v2 и платят соответственно. Внезапное повышение цен на стабильных маршрутах - это плохое поведение в протоколе; мы рекомендуем устаревать старый маршрут и предоставлять 410 Gone, который указывает на новый маршрут по новой цене.

Как выглядит наблюдаемость - журналы, метрики, оповещения?

Каждый платеж отображается в панели управления Blockchain0x с кошельком плательщика, суммой и временной меткой, и те же данные приходят на ваш webhook payment.received, так что вы можете передавать их в Datadog, Splunk или ваш собственный стек логирования. Адаптер работает внутри вашего сервера, поэтому сигналы на уровне запросов (какой маршрут был указан, каждый 402, который вы вернули, каждый X-Payment, который вы проверили) принадлежат вам для записи и эмитирования в качестве метрик в любом формате, который использует ваш стек. Настройте оповещения на очевидные моменты: резкий рост ответов 402 или снижение уровня подтвержденных платежей.

Что насчет регуляторных вопросов - являюсь ли я бизнесом по предоставлению денежных услуг, если я это делаю?

Вероятно, нет, но это зависит от юрисдикции, и мы не ваши юристы. Причина: вы получаете оплату за услуги, которые предоставляете, а не передаете деньги между третьими сторонами (что является триггером для статуса MSB в США). USDC признается платежным стейблкоином в большинстве юрисдикций. Вы должны уплатить налог на доход, эквивалентный USD; мы генерируем записи, необходимые для этого. Если вы работаете в контексте B2B с высоким объемом или в юрисдикции с строгими правилами криптовалют (Германия, Сингапур для определенных форм), получите конкретные юридические советы перед запуском производственного трафика. Мы можем направить вас в фирмы, которые выполняли эту работу для предыдущих клиентов.

Позвольте агентам оплачивать ваш API.

Добавьте маршрут к таблице цен и смонтируйте адаптер. Stripe остается для людей. Обе аудитории обслуживаются.