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

Эндпоинт

POST https://api.lasersell.io/v1/sell

Заголовки

ЗаголовокОбязательныйОписание
Content-TypeДаДолжен быть application/json
x-api-keyДаВаш API ключ LaserSell

Тело запроса: BuildSellTxRequest

ПолеТипОбязательноеОписание
mintstringДаАдрес минта токена (base58).
user_pubkeystringДаПубличный ключ вашего кошелька (base58).
amount_tokensnumberДаКоличество для продажи в атомарных единицах токена.
outputstringДаЖелаемый выходной актив: "SOL" или "USD1".
slippage_bpsnumberДаМаксимальный допуск проскальзывания в базисных пунктах (например, 2000 = 20%).
modestringНетПодсказка режима маршрутизации. Допустимые значения: "fast", "secure". По умолчанию "fast".
market_contextobjectНетПредварительно разрешённый рыночный контекст. Пропустите для автоматического разрешения сервером.
send_modestringНетРежим отправки транзакции: "helius_sender", "astralane" или "rpc".
tip_lamportsnumberНетНеобязательная приоритетная комиссия в лампортах.
partner_fee_recipientstringНетКошелёк получателя партнёрской комиссии (base58 pubkey).
partner_fee_bpsnumberНетПартнёрская комиссия в базисных пунктах (макс. 50 = 0.5%). Взаимоисключающе с partner_fee_lamports.
partner_fee_lamportsnumberНетПартнёрская комиссия фиксированная в лампортах SOL (макс. 50 000 000). Взаимоисключающе с partner_fee_bps.

Ответ: BuildTxResponse

ПолеТипОписание
txstringЗакодированная в Base64 неподписанная Solana VersionedTransaction.
routeobjectНеобязательные метаданные маршрутизации.
debugobjectНеобязательная отладочная информация.

Пример curl

curl -X POST https://api.lasersell.io/v1/sell \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "mint": "TOKEN_MINT_ADDRESS",
    "user_pubkey": "YOUR_WALLET_PUBKEY",
    "amount_tokens": 1000000,
    "slippage_bps": 2000,
    "output": "SOL"
  }'

Примеры SDK

import { ExitApiClient, type BuildSellTxRequest } from "@lasersell/lasersell-sdk";

const client = ExitApiClient.withApiKey("YOUR_API_KEY");

const request: BuildSellTxRequest = {
  mint: "TOKEN_MINT_ADDRESS",
  user_pubkey: "YOUR_WALLET_PUBKEY",
  amount_tokens: 1_000_000,
  slippage_bps: 2_000,
  output: "SOL",
};

const response = await client.buildSellTx(request);
console.log("Unsigned tx (base64):", response.tx);

// Or get just the base64 string:
const txB64 = await client.buildSellTxB64(request);

Ответы об ошибках

См. Обработка ошибок для полной спецификации конверта ошибок и логики повторных попыток.