Skip to main content
Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →

Apa itu Transaction API?

Transaction API Raydium (Route V2) adalah layanan sisi server yang membangun transaksi swap Solana yang terserialisasi tanpa memerlukan klien untuk mempertahankan koneksi RPC atau menggabungkan seluruh SDK Raydium. Ini sangat menyederhanakan integrasi untuk:
  • Frontend web yang tidak dapat menjalankan klien RPC lokal
  • Aplikasi mobile dengan sumber daya terbatas
  • Bot trading tanpa antarmuka
  • Agregator dan penyedia dompet
Alih-alih melakukan perutean pool kompleks dan konstruksi transaksi di klien, Anda meminta kutipan swap dan pembuatan transaksi dari API kami, kemudian menandatangani dan menyiarkan hasilnya menggunakan RPC Solana apa pun.

Ikhtisar Alur Kerja

Transaction API memisahkan perhatian menjadi dua fase:

1. Fase Komputasi: Dapatkan Kutipan

Panggil /compute/swap-base-in atau /compute/swap-base-out untuk menerima output swap yang diharapkan (atau input yang diperlukan) berdasarkan status pool saat ini. Endpoint ini read-only dan tidak memerlukan penandatanganan apa pun:
Respons mencakup:
  • Jumlah output yang diharapkan
  • Perincian rute (pool dan sumber likuiditas mana yang digunakan)
  • Dampak harga

2. Fase Transaksi: Bangun dan Tandatangani

Setelah Anda memiliki respons komputasi, teruskan ke /transaction/swap-base-in atau /transaction/swap-base-out (bersama dengan dompet dan konfigurasi):
Respons berisi:
  • Transaksi versioned yang dikodekan base64 siap untuk ditandatangani
  • Alamat tabel pencarian alamat (jika txVersion=V0)
Klien Anda kemudian:
  1. Mendekode transaksi
  2. Menandatanganinya dengan keypair pengguna
  3. Menyiarkannya melalui RPC Solana apa pun
  4. Menunggu konfirmasi

Endpoint Komputasi

GET /compute/swap-base-in

Kasus penggunaan: Pengguna menentukan jumlah input, kami menghitung output. Parameter query yang diperlukan:
  • inputMint – Alamat mint token yang Anda kirim
  • outputMint – Alamat mint token yang Anda inginkan
  • amount – Jumlah input dalam lamport (unit terkecil)
  • slippageBps – Slippage maksimal yang dapat diterima dalam basis poin (0–10000)
  • txVersionV0 atau LEGACY
Opsional:
  • referrerBps – Jika Anda memiliki otoritas referrer, basis poin output untuk dikumpulkan sebagai biaya referrer

GET /compute/swap-base-out

Kasus penggunaan: Pengguna menentukan output yang diinginkan, kami menghitung input yang diperlukan. Parameter query yang diperlukan:
  • inputMint, outputMint, amount (output yang diinginkan), slippageBps, txVersion
Catatan: Tidak ada basis poin referrer untuk base-out (belum diimplementasikan).

Endpoint Transaksi

POST /transaction/swap-base-in

Membangun transaksi untuk jumlah input tetap. Isi yang diperlukan:
  • wallet – Alamat dompet penandatangan Anda
  • swapResponse – Seluruh objek respons komputasi
  • txVersion – Versi transaksi
  • computeUnitPriceMicroLamports – Biaya prioritas dalam mikro-lamport
Opsional:
  • wrapSol – Jika true, bungkus SOL native untuk input
  • unwrapSol – Jika true, buka bungkus WSOL menjadi SOL di output
  • inputAccount – Akun token untuk input (diperlukan jika tidak membungkus SOL)
  • outputAccount – Akun token untuk output
  • nonceInfo – Nonce tahan lama untuk penandatanganan offline
  • jitoInfo – Parameter paket perlindungan MEV Jito
  • referrerWallet – Dompet referrer untuk pengumpulan biaya

POST /transaction/swap-base-out

Membangun transaksi untuk jumlah output tetap. Parameter yang sama dengan base-in, kecuali:
  • Bidang referrerInfo saat ini dikomentari (belum diimplementasikan)

Amplop Respons

Semua endpoint mengembalikan amplop standar:
Saat error, success adalah false dan msg berisi kode error (misalnya, REQ_WALLET_ERROR, REQ_SLIPPAGE_BPS_ERROR).

Bentuk Respons Transaksi

Respons transaksi yang berhasil terlihat seperti:

Contoh Integrasi

Berikut adalah alur khas dalam pseudocode:

Parameter Utama Dijelaskan

txVersion

  • V0: Transaksi Solana modern dengan Address Lookup Tables (ALTs). Ukuran serialisasi lebih kecil, biaya lebih rendah.
  • LEGACY: Format transaksi pre-ALT. Lebih besar, tetapi berfungsi dengan semua endpoint RPC.
Pilih V0 jika memungkinkan; jatuh kembali ke LEGACY jika RPC atau dompet Anda tidak mendukung ALTs.

computeUnitPriceMicroLamports

Biaya prioritas untuk penyertaan blok yang lebih cepat. Atur ke 0 untuk tidak ada biaya prioritas, atau nilai yang lebih tinggi (misalnya, 1000) untuk bersaing di jaringan yang ramai. Unit adalah mikro-lamport per unit komputasi.

slippageBps

Toleransi slippage maksimal dalam basis poin. 100 = 1%, 50 = 0,5%.
  • Gunakan nilai yang lebih rendah (misalnya, 25–50 bps) untuk swap yang paling stabil
  • Tingkatkan untuk pasangan volatile atau likuiditas rendah

wrapSol dan unwrapSol

  • wrapSol: Jika true, API membungkus SOL native Anda menjadi WSOL. Tidak perlu inputAccount.
  • unwrapSol: Jika true, API membuka bungkus WSOL output kembali ke SOL native. Tidak perlu outputAccount.
Jika keduanya false, Anda harus menyediakan akun token eksplisit.

Endpoint Jaringan

Kode Error

Pesan error umum:

Lihat Juga