메인 콘텐츠로 건너뛰기

엔드포인트

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

헤더

헤더필수설명
Content-Typeapplication/json이어야 합니다
x-api-keyLaserSell API 키

요청 본문: 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아니오선택적 우선 수수료 팁(lamport).
partner_fee_recipientstring아니오파트너 수수료 수신 지갑 (base58 공개키).
partner_fee_bpsnumber아니오파트너 수수료(베이시스 포인트) (최대 50 = 0.5%). partner_fee_lamports와 상호 배타적.
partner_fee_lamportsnumber아니오고정 SOL lamport 파트너 수수료 (최대 50,000,000). partner_fee_bps와 상호 배타적.

응답: BuildTxResponse

필드타입설명
txstringBase64로 인코딩된 서명되지 않은 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);

오류 응답

전체 오류 엔벨로프 사양과 재시도 가능한 오류 로직은 오류 처리를 참조하세요.