
Управляйте NordBastion из кода.
KYC-free, оплата криптовалютой, полностью скриптуемый.
Зарегистрируйтесь, создайте ключ и проверьте доступ. Пополнение не требуется.
Создайте API-ключ до оплаты.
Зарегистрируйтесь, создайте ключ и проверьте доступ. Пополнение не требуется.
cURL
Используйте токен доступа, полученный при регистрации или входе, чтобы создать API-ключ с ограниченными правами. Ключ возвращается в открытом виде только один раз.
# bash + curl + jq
# Set NB_EMAIL and NB_PASSWORD in your environment.
set -eu
: "${NB_EMAIL:?Set NB_EMAIL}" "${NB_PASSWORD:?Set NB_PASSWORD}"
API=https://nordbastion.com/v1
TOKEN=$(jq -n '{email:env.NB_EMAIL,password:env.NB_PASSWORD}' |
curl --fail-with-body -sS "$API/auth/register" \
-H 'Content-Type: application/json' --data-binary @- |
jq -er '.tokens.access_token')
KEY=$(curl --fail-with-body -sS "$API/auth/api-keys" \
-H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' \
-d '{"name":"agent-read","scope":"read"}' |
jq -er '.plaintext')
curl --fail-with-body -sS "$API/account/balance" \
-H "Authorization: Bearer $KEY"
# Store KEY in your secret store. Do not print it.
unset TOKEN KEY
Python
Создайте API-ключ до оплаты.
import os
import requests
api = "https://nordbastion.com/v1"
with requests.Session() as client:
signup = client.post(api + "/auth/register", json={
"email": os.environ["NB_EMAIL"],
"password": os.environ["NB_PASSWORD"],
}, timeout=30)
signup.raise_for_status()
token = signup.json()["tokens"]["access_token"]
created = client.post(api + "/auth/api-keys",
headers={"Authorization": f"Bearer {token}"},
json={"name": "agent-read", "scope": "read"},
timeout=30)
created.raise_for_status()
key = created.json()["plaintext"]
# Store key in your secret store; never log it.
balance = client.get(api + "/account/balance",
headers={"Authorization": f"Bearer {key}"},
timeout=30)
balance.raise_for_status()
print(balance.json())
Доступ по API-ключу не зависит от оплаты. До 10 активных ключей на аккаунт; отзывайте неиспользуемые ключи.
Совместимость и версии
Размещённая точка доступа MCP обновляется здесь. Версионные загрузки stdio включают исходный код и контрольные суммы SHA-256.
Размещённый MCP
https://nordbastion.com/mcp
- Версия
- 1.1.0
- Версии протокола
- 2026-07-28 · 2025-11-25 · 2025-06-18 · 2025-03-26
- Последняя проверка
- 2026-09-15
Передавайте учётные данные в заголовке Authorization или аргументе access_token, если ваш MCP-клиент не позволяет задавать заголовки.
Авторизация OAuth через браузер недоступна. Используйте токен Bearer или явный аргумент access_token.
MCP · register_account → create_api_key
{"name":"register_account","arguments":{
"email":"agent@example.com",
"password":"YOUR_STRONG_PASSWORD"
}}
{"name":"create_api_key","arguments":{
"name":"agent-read",
"scope":"read",
"access_token":"ACCESS_TOKEN_FROM_SIGNUP"
}}
{"name":"get_balance","arguments":{
"access_token":"PLAINTEXT_FROM_CREATE_API_KEY"
}}
Создавайте SSH-ключи локально. Загружайте только открытый ключ; закрытый ключ храните на своём устройстве.
ssh-keygen -t ed25519 -f ~/.ssh/nordbastion_agent
# add_ssh_key: public_key = contents of the .pub file
Скачать MCP 0.2.0
Python ≥ 3.10 · MCP SDK 2.2.0 · MIT
Wheel · Исходный код · SHA-256 · Changelog
pip install https://nordbastion.com/downloads/nordbastion_mcp-0.2.0-py3-none-any.whl
nordbastion-mcp
Справочник эндпоинтов
SDK для Python, TypeScript, Go и Rust, а также CLI запланированы. Сейчас используйте REST или MCP.
| Method | Конечная точка | Область действия | Статус |
|---|---|---|---|
| POST | /v1/auth/register | public | LIVE |
| POST | /v1/auth/login | public | LIVE |
| POST | /v1/auth/login/totp | public | LIVE |
| POST | /v1/auth/token/refresh | public | LIVE |
| POST | /v1/auth/recover | public | PLANNED |
| GET | /v1/auth/sessions | full | LIVE |
| DELETE | /v1/auth/sessions/{token_id} | full | LIVE |
| POST | /v1/auth/totp/setup | full | LIVE |
| POST | /v1/auth/totp/enable | full | LIVE |
| POST | /v1/auth/totp/disable | full | LIVE |
| POST | /v1/auth/password | full | LIVE |
| POST | /v1/auth/api-keys | full | LIVE |
| GET | /v1/auth/api-keys | read | LIVE |
| DELETE | /v1/auth/api-keys/{key_id} | full | LIVE |
| GET | /v1/account | read | LIVE |
| PATCH | /v1/account | full | PLANNED |
| GET | /v1/account/balance | read | LIVE |
| GET | /v1/account/usage | read | LIVE |
| GET | /v1/account/audit-log | read | LIVE |
| GET | /v1/billing/coins | public | LIVE |
| POST | /v1/billing/topups | billing | LIVE |
| GET | /v1/billing/topups | read | LIVE |
| GET | /v1/billing/topups/{order_number} | read | LIVE |
| POST | /v1/billing/topups/{order_number}/cancel | billing | LIVE |
| GET | /v1/billing/bonus-tiers | public | LIVE |
| GET | /v1/catalog | public | LIVE |
| GET | /v1/catalog/vps | public | LIVE |
| GET | /v1/catalog/dedicated | public | LIVE |
| GET | /v1/catalog/bastions | public | LIVE |
| GET | /v1/catalog/images | public | LIVE |
| GET | /v1/catalog/{code} | public | LIVE |
| POST | /v1/servers | servers | LIVE |
| GET | /v1/servers | read | LIVE |
| GET | /v1/servers/{order_number} | read | LIVE |
| PATCH | /v1/servers/{order_number} | servers | LIVE |
| DELETE | /v1/servers/{order_number} | servers | LIVE |
| POST | /v1/ssh-keys | servers | LIVE |
| GET | /v1/ssh-keys | read | LIVE |
| GET | /v1/ssh-keys/{id} | read | LIVE |
| DELETE | /v1/ssh-keys/{id} | servers | LIVE |
| POST | /v1/webhooks | full | LIVE |
| GET | /v1/webhooks | read | LIVE |
| DELETE | /v1/webhooks/{id} | full | LIVE |
| POST | /v1/webhooks/{id}/test | full | LIVE |
| GET | /v1/transparency/canary | public | LIVE |
| GET | /v1/transparency/peering | public | LIVE |
| GET | /v1/transparency/status | public | LIVE |
| GET | /v1/agents/directory | public | LIVE |
| POST | /v1/agents/directory | full | LIVE |
| POST | /v1/oauth/register | public | LIVE |
| POST | /v1/oauth/token | public | LIVE |
| POST | /v1/oauth/revoke | public | LIVE |
| GET | /v1/oauth/introspect | public | LIVE |
Оплата
Изучите сервис и проверьте доступ до пополнения. Криптовалютное пополнение нужно только для платных услуг.
POST /v1/billing/topups · {"amount_usd":50,"crypto":"XMR"} · USD 30–10,000
x402 поддерживает подписанные платежи USDC в сети Base через точку пополнения. Дождитесь подтверждения баланса перед заказом.
x402: POST /v1/billing/topups · X-Payment-Mode: x402 · {"amount_usd":50}
Лимиты запросов
API key: 120 / min · 3,000 / hour · public: 30 / min · HTTP 429 + Retry-After
Действия аккаунта записываются в журнал аудита API. Учётные данные и тела запросов в него не включаются.
Получить API-ключ