Аутентификация
CLOB API использует двухуровневую систему аутентификации.
Уровни
| Уровень | Метод | Использование |
|---|---|---|
| L1 | Private Key + EIP-712 | Управление API ключами |
| L2 | API Key + Secret + HMAC | Торговые операции |
L1 — Private Key
Для создания/удаления API ключей требуется подпись EIP-712:
POLY_ADDRESS = "0x..." # Ваш кошелёк
POLY_TIMESTAMP = "1234567890" # Unix timestamp
POLY_NONCE = "0"
POLY_SIGNATURE = "0x..." # EIP-712 подпись
L2 — API Key
Для торговых операций используйте API ключ:
POLY_API_KEY = "your-api-key"
POLY_TIMESTAMP = "1234567890"
POLY_SIGNATURE = HMAC-SHA256(secret, timestamp + method + path + body)
POLY_PASSPHRASE = "your-passphrase"
Создание API ключа
POST
https://clob.polymarket.com/api-keys
Создаёт новый API ключ для торговли (L2). Требует L1 авторизации — подписи приватным ключом кошелька. Вызывается один раз при настройке. Сохраните secret и passphrase — они показываются только при создании.
{
"apiKey": "ak-...",
"secret": "sk-...",
"passphrase": "pp-..."
}
Получение ключей
GET
https://clob.polymarket.com/api-keys
Возвращает список активных API ключей пользователя. Показывает только apiKey, без секретов. Используйте для аудита или перед удалением старых ключей.
Удаление ключа
DELETE
https://clob.polymarket.com/api-keys
Отзывает API ключ. После удаления все запросы с этим ключом будут отклонены. Используйте при компрометации ключа или ротации доступов.
SDK
Рекомендуется использовать официальные SDK, которые автоматически обрабатывают аутентификацию:
# Python
pip install py-clob-client
from py_clob_client.client import ClobClient
client = ClobClient(
host="https://clob.polymarket.com",
key=private_key,
chain_id=137
)
client.create_api_key()
# TypeScript
npm install @polymarket/clob-client
import { ClobClient } from "@polymarket/clob-client";
const client = new ClobClient(host, chainId, signer);