الانتقال إلى المحتوى الرئيسي
إذا كنت تخطط لتتبع هذا الشراء مع بث ذكاء الخروج، يجب عليك توصيل البث قبل تقديم معاملة الشراء. يكتشف البث المراكز الجديدة من خلال مراقبة وصول الرموز على السلسلة في الوقت الفعلي. إذا لم يكن البث متصلاً عند هبوط الشراء، لن يتم تتبع المركز ولن تُولّد إشارات خروج له.

نقطة النهاية

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

الترويسات

HeaderRequiredDescription
Content-TypeYesMust be application/json
x-api-keyYesYour LaserSell API key

جسم الطلب: BuildBuyTxRequest

FieldTypeRequiredDescription
mintstringYesعنوان الرمز للشراء (base58).
user_pubkeystringYesالمفتاح العام لمحفظتك (base58).
amountnumberNo*مبلغ مقروء للإنفاق (مثلاً 0.1 لـ 0.1 SOL، 10.0 لـ 10 USD1). متبادل الاستبعاد مع amount_in_total.
amount_in_totalnumberNo*مبلغ الإنفاق بالوحدات الذرية لأصل الإدخال (مثلاً lamports لـ SOL). متبادل الاستبعاد مع amount.
slippage_bpsnumberYesأقصى تحمل للانزلاق بنقاط أساس (مثلاً 2000 = 20%).
inputstringNoأصل الإدخال: "SOL" (افتراضي) أو "USD1".
modestringNoتلميح وضع التوجيه. القيم: "fast", "secure". الافتراضي "fast".
send_modestringNoوضع إرسال المعاملة: "helius_sender", "astralane", أو "rpc".
tip_lamportsnumberNoإكرامية رسوم أولوية اختيارية بـ lamports.
partner_fee_recipientstringNoمحفظة مستلم رسوم الشريك (مفتاح عام base58).
partner_fee_bpsnumberNoرسوم الشريك بنقاط أساس (أقصى 50 = 0.5%). متبادل الاستبعاد مع partner_fee_lamports.
partner_fee_lamportsnumberNoرسوم الشريك كمبلغ ثابت بـ SOL lamports (أقصى 50,000,000). متبادل الاستبعاد مع partner_fee_bps.
* يجب توفير واحد بالضبط من amount أو amount_in_total. يتم تحويل amount تلقائياً إلى وحدات ذرية بناءً على أصل input (SOL: 10^9, USD1: 10^6).

الاستجابة: BuildTxResponse

FieldTypeDescription
txstringمعاملة Solana VersionedTransaction غير موقعة مشفرة بـ Base64.
routeobjectبيانات توجيه وصفية اختيارية.
debugobjectمعلومات تصحيح اختيارية.

أمثلة curl

باستخدام amount المقروء:
curl -X POST https://api.lasersell.io/v1/buy \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "mint": "TOKEN_MINT_ADDRESS",
    "user_pubkey": "YOUR_WALLET_PUBKEY",
    "amount": 0.1,
    "slippage_bps": 2000,
    "input": "SOL"
  }'
باستخدام amount_in_total الذري:
curl -X POST https://api.lasersell.io/v1/buy \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "mint": "TOKEN_MINT_ADDRESS",
    "user_pubkey": "YOUR_WALLET_PUBKEY",
    "amount_in_total": 100000000,
    "slippage_bps": 2000,
    "input": "SOL"
  }'

أمثلة حزمة التطوير

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

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

const request: BuildBuyTxRequest = {
  mint: "TOKEN_MINT_ADDRESS",
  user_pubkey: "YOUR_WALLET_PUBKEY",
  amount: 0.1, // 0.1 SOL
  slippage_bps: 2_000,
};

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

استجابات الأخطاء

راجع معالجة الأخطاء لمواصفات مغلف الأخطاء الكامل ومنطق الأخطاء القابلة لإعادة المحاولة.