GET /v1/health) должен содержать действительный API-ключ. Ключи относятся к пространству имён csb_pub_, имеют либо доступ только на чтение, либо торговый доступ и привязаны к вашему аккаунту CSBoard. Сервер хранит только SHA-256-хеш каждого ключа — сам секрет показывается один раз при создании и больше никогда, поэтому сохраните его в надёжном месте.
Получение API-ключа
Откройте вкладку API в профиле
Перейдите на csboard.com/profile?tab=api и при необходимости войдите в аккаунт.
Сгенерируйте новый ключ
Нажмите Generate key. Выберите метку, отражающую назначение ключа (например,
price-tracker-prod).Скопируйте ключ немедленно
Ваш новый ключ
csb_pub_… отображается только один раз. Скопируйте его в менеджер секретов или переменные окружения, прежде чем закрыть окно.Передача ключа в запросах
Отправляйте ключ как Bearer-токен в заголовкеAuthorization в каждом запросе:
api_key — это полезно для быстрых тестов в браузере или инструментах, не поддерживающих пользовательские заголовки:
Authorization; параметры запроса с большей вероятностью попадают в логи сервера.
Возможности ключей
| Возможность | Ключ для чтения | Торговый ключ |
|---|---|---|
Все эндпоинты GET | ✅ | ✅ |
POST /v1/orders | ❌ | ✅ |
Безопасность и хранение
Мы храним толькоSHA256(key) — никогда сырой секрет. Это означает:
- Если вы потеряли ключ, придётся сгенерировать новый; опции «показать ключ» нет.
- Скомпрометированный ключ можно мгновенно отозвать из профиля без влияния на другие ключи.
Ошибки аутентификации
Каждая ошибка API возвращает JSON-тело такого формата:| HTTP-статус | code | Когда возникает |
|---|---|---|
| 401 | missing_api_key | Ключ не передан или не начинается с csb_pub_ |
| 401 | invalid_api_key | Ключ не распознан или был отозван |
| 401 | too_many_failed_auth | Слишком много неверных ключей с вашего IP — применён 5-минутный бан |
| 403 | trading_not_enabled | Ключ действителен, но торговля для него не включена |
| 429 | rate_limit_exceeded | Превышен лимит запросов для ключа |