Перейти к основному содержанию

Обзор

Регистрация кошельков подтверждает владение кошельком Solana для LaserSell API. Регистрация обязательна перед подключением кошельков к Exit Intelligence Stream. Поток проверяет, что каждый кошелёк в вашем сообщении configure зарегистрирован на ваш аккаунт. Регистрация использует подписи Ed25519, поэтому транзакция в блокчейне не требуется.

POST /v1/wallets/register

Зарегистрируйте кошелёк, подтвердив владение подписью Ed25519.

Запрос

{
  "wallet_pubkey": "YourWalletPubkey...",
  "signature": "base58-encoded-ed25519-signature",
  "message": "lasersell-register:YourWalletPubkey...:1706000000",
  "label": "My Trading Wallet"
}
ПолеТипОбязательноеОписание
wallet_pubkeystringДаПубличный ключ кошелька Solana для регистрации.
signaturestringДаПодпись Ed25519 сообщения, закодированная в base58.
messagestringДаСтруктурированное сообщение: lasersell-register:<pubkey>:<unix_timestamp>. Временная метка должна быть в пределах 5 минут.
labelstringНетНеобязательная человекочитаемая метка для кошелька.

Ответ

{
  "wallet_pubkey": "YourWalletPubkey...",
  "registered": true
}

Аутентификация

Требуется заголовок x-api-key с действительным API ключом.

Ошибки

СтатусКодОписание
400Bad RequestНеверный формат pubkey, некорректное сообщение или истёкшая временная метка (>5 мин).
403ForbiddenОтсутствующий или неверный API ключ, или проверка подписи не пройдена.

DELETE /v1/wallets

Отмена регистрации кошелька.

Запрос

{
  "wallet_pubkey": "YourWalletPubkey..."
}

Ответ

{
  "wallet_pubkey": "YourWalletPubkey...",
  "removed": true
}

Использование SDK

Все 4 SDK предоставляют вспомогательные методы для регистрации кошельков.

proveOwnership / prove_ownership

Генерация WalletProof локально с использованием вашей пары ключей. Это чистая криптографическая операция без сетевого вызова.
import { proveOwnership } from "@lasersell/lasersell-sdk";

const proof = proveOwnership(keypair);
// proof = { walletPubkey, signature, message }

registerWallet / register_wallet

Отправка доказательства в API для регистрации кошелька.
const client = ExitApiClient.withApiKey(apiKey);
await client.registerWallet(proof, "My Wallet");

connectWithWallets / connect_with_wallets

Удобный метод, который регистрирует кошельки и подключается к потоку одним шагом.
import { StreamClient, proveOwnership } from "@lasersell/lasersell-sdk";

const proof = proveOwnership(keypair);
const client = new StreamClient(apiKey);
const session = await client.connectWithWallets(
  [proof],
  { target_profit_pct: 50, stop_loss_pct: 10 },
  120, // deadline_timeout_sec
);