REST + MCP API, спроектированный под автономных агентов. Регистрация, пополнение криптой и выпуск карт — всего за 4 вызова, без человека в цикле, без KYC, с раздельными scope и лимитами запросов на каждый ключ.
Эндпоинты ниже — это фундамент, а паттерны — то, что разработчики агентов реально запускают в продакшен.
Агенты, которые сами решают, что купить, и проводят покупку без подтверждения человеком. API выпускает свежую карту под каждую транзакцию, списывает с неё и удаляет — не оставляя в открытом доступе пригодных для повторного использования платёжных реквизитов.
Программный выпуск одной карты BIN-471938 (Visa Business) на каждый рекламный аккаунт Meta / Google / TikTok. Ротация карт раз в 30–60 дней, чтобы аккаунты оставались чистыми.
Маркетплейсы и платформы, которым нужна уникальная карта под каждую транзакцию конечного пользователя. Выпуск, списание, удаление — меньше чем за 10 секунд, без PCI-скоупа и без груза хранения карточных данных.
Массовая регистрация в бесплатных триалах. Под каждый триал — карта с минимальным пополнением; удаление до продления чисто блокирует автосписание.
Мультитенантные агенты, которые оплачивают вышестоящие SaaS (AWS, OpenAI, Cloudflare, GitHub) с отдельной карты на каждое рабочее пространство. Расходы становятся атрибутируемыми клиенту и не светят ваш мастер-биллинг.
Каждый воркер запрашивает карту через API ровно в тот момент, когда нужна оплата, использует её и закрывает. Юнит-стоимость $1.50 — копейки на фоне любых альтернатив.
Четыре вызова API проводят агента от «нет аккаунта» до «карта готова к списанию». Замените TOKEN на свой bearer-токен, CARD_ID — на integer, возвращённый на шаге 3.
/.well-known/openapi.json
AI plugin manifest /.well-known/ai-plugin.json
MCP endpoint POST /api/v1/mcp
# Create an anonymous account. Returns seed + Bearer token (ONE TIME). curl -X POST https://cryptotopcard.com/api/v1/auth/signup \ -H "Content-Type: application/json" \ -d '{"name":"my-agent"}'
# Create a top-up: request $100 net in USDT (TRC-20). # Returns the deposit address + exact crypto amount (gross, includes 2% fee). curl -X POST https://cryptotopcard.com/api/v1/topups \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{"coin":"USDTTRC","amount":100}' # {... "deposit_address":"T...", "crypto_amount":"102.92", "net_credit_usd":100}
# Once the balance shows the credited amount, issue a card. curl -X POST https://cryptotopcard.com/api/v1/cards \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{"bin_id":"471938","amount":150,"label":"meta-acct-7"}' # {... "card_number":"4719 ...", "card_exp":"02/29", "card_cvv":"136"}
# When the card has served its purpose, delete it. Remaining balance refunds instantly. curl -X DELETE https://cryptotopcard.com/api/v1/cards/$CARD_ID \ -H "Authorization: Bearer $TOKEN"
Те же Bearer-токены работают на MCP-эндпоинте /api/v1/mcp. После настройки LLM вызывает `list_bins`, `create_topup`, `issue_card`, `freeze_card` как нативные инструменты — без обёрток в коде.
Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json под mcpServers:
"cryptotopcard": {
"command": "npx",
"args": ["-y", "mcp-remote",
"https://cryptotopcard.com/api/v1/mcp",
"--header", "Authorization:Bearer ctk_live_..."]
}
В настройках вашего custom GPT добавьте Action и импортируйте OpenAPI-спецификацию:
Import OpenAPI from:
https://cryptotopcard.com/.well-known/openapi.json
Auth: API Key (Bearer)
В Cursor: настройки → Features → Model Context Protocol, добавьте новый сервер с HTTP-транспортом:
HTTP transport:
url: https://cryptotopcard.com/api/v1/mcp
authorization: Bearer ctk_live_...
После подключения скажите модели «выпусти Visa Business карту на $200, пополнив USDT» — и она автоматически выстроит цепочку `list_bins → list_coins → create_topup → issue_card`, покажет адрес депозита и будет ждать вашего подтверждения.
Всего девятнадцать маршрутов. Публичные (без авторизации) — для discovery и регистрации; всё остальное требует Bearer-токен со scope под конкретную операцию.
| Method | Path | Description |
|---|---|---|
| GET | /api/v1/coins | Список 20 поддерживаемых криптовалют (публичный). |
| GET | /api/v1/bins | Список 7 уровней BIN и комиссий (публичный). |
| POST | /api/v1/auth/signup | Создание анонимного аккаунта. Возвращает seed + первый API-токен (один раз). |
| POST | /api/v1/auth/login | Обмен seed-фразы на свежий API-токен. |
| GET | /api/v1/me | Информация о текущем аккаунте: баланс, количество карт, scopes. |
| POST | /api/v1/topups | Создание крипто-инвойса на депозит. Клиент платит брутто (включая комиссию 2%), на баланс зачисляется нетто. |
| GET | /api/v1/topups/:id | Получить текущий статус пополнения. |
| POST | /api/v1/topups/:id/cancel | Отменить ожидающее пополнение (не действует, если уже оплачено). |
| GET | /api/v1/cards | Список активных и замороженных карт (только last4). |
| POST | /api/v1/cards | Выпустить новую карту. Списывает $1.50 + сумму с баланса. |
| GET | /api/v1/cards/:id | Полные реквизиты карты (PAN, срок, CVV) для одной карты. |
| POST | /api/v1/cards/:id/freeze | Заблокировать все списания по карте. Обратимо. |
| POST | /api/v1/cards/:id/unfreeze | Разблокировать замороженную карту. |
| POST | /api/v1/cards/:id/topup | Перевести средства с баланса аккаунта на баланс карты. |
| DELETE | /api/v1/cards/:id | Закрыть карту. Мгновенно возвращает остаток баланса на аккаунт. |
| GET | /api/v1/keys | Список API-ключей вызывающего (только метаданные, без токена). |
| POST | /api/v1/keys | Сгенерировать новый API-ключ. Токен возвращается один раз. |
| DELETE | /api/v1/keys/:id | Отозвать API-ключ. |
| POST | /api/v1/mcp | MCP-сервер (JSON-RPC 2.0). Та же Bearer-аутентификация. |
Каждый запрос аутентифицируется Bearer-токеном пользователя (ctk_live_…). Токены хранятся в виде sha256-хэшей; исходное значение мы не сохраняем никогда. Каждый токен несёт список scope через запятую (read, topups, cards) — токен без «cards» не сможет выпустить карту.
Доступно три scope. По умолчанию у новых токенов — read,topups,cards; убирайте лишние при создании токена (POST /keys со scopes: "read"), чтобы ограничить радиус поражения.
read — GET-эндпоинты (инфо об аккаунте, список карт, список пополнений).topups — POST /topups, /topups/:id/cancel.cards — POST /cards, /cards/:id/freeze, /cards/:id/unfreeze, /cards/:id/topup, DELETE /cards/:id, GET /cards/:id (чувствительный).Восстановления по email нет. Seed-фраза, возвращённая при регистрации, — единственный доступ; при её утере аккаунт и его баланс не восстанавливаются. Храните её в менеджере секретов. API-токены ротируйте свободно через POST /keys.
Публичные эндпоинты работают без аккаунта. Регистрация — один POST. Прогоните quickstart от начала до конца перед интеграцией.
Читать быстрый старт