Saltar al contenido principal

Endpoint

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

Encabezados

EncabezadoRequeridoDescripción
Content-TypeDebe ser application/json
x-api-keyTu clave API de LaserSell

Cuerpo de solicitud: BuildSellTxRequest

CampoTipoRequeridoDescripción
mintstringDirección mint del token (base58).
user_pubkeystringTu clave pública de wallet (base58).
amount_tokensnumberCantidad a vender en unidades atómicas del token.
outputstringActivo de salida deseado: "SOL" o "USD1".
slippage_bpsnumberTolerancia máxima de slippage en puntos base (por ejemplo, 2000 = 20%).
modestringNoSugerencia de modo de enrutamiento. Valores válidos: "fast", "secure". Por defecto "fast".
market_contextobjectNoContexto de mercado pre resuelto. Omitir para que el servidor resuelva automáticamente.
send_modestringNoModo de envío de transacción: "helius_sender", "astralane" o "rpc".
tip_lamportsnumberNoTip opcional de priority fee en lamports.
partner_fee_recipientstringNoWallet receptora de comisión de partner (clave pública base58).
partner_fee_bpsnumberNoComisión de partner en puntos base (máximo 50 = 0.5%). Mutuamente excluyente con partner_fee_lamports.
partner_fee_lamportsnumberNoComisión de partner en lamports fijos de SOL (máximo 50,000,000). Mutuamente excluyente con partner_fee_bps.

Respuesta: BuildTxResponse

CampoTipoDescripción
txstringVersionedTransaction de Solana sin firmar codificada en base64.
routeobjectMetadatos opcionales de enrutamiento.
debugobjectInformación de depuración opcional.

Ejemplo con 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"
  }'

Ejemplos de 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);

Respuestas de error

Ver Manejo de errores para la especificación completa del formato de error y la lógica de errores reintentables.