Langsung ke konten utama

Documentation Index

Fetch the complete documentation index at: https://docs.raydium.io/llms.txt

Use this file to discover all available pages before exploring further.

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

Apa itu Perps API?

Raydium Perps API (V1) adalah layanan konfigurasi dan metadata untuk frontend serta integrasi Raydium Perpetual Futures. API ini menyediakan:
  • Konfigurasi UI – versi terkini, dukungan versi minimum
  • Endpoint RPC – endpoint Solana RPC terpilih untuk UI
  • Statistik pasar – volume perdagangan dan open interest selama 24h/7h/30h
  • Pembatasan regional – pemeriksaan ketersediaan per negara
  • Metadata pool – pasar perp aktif dan data volume
  • Data kampanye – leaderboard, statistik pengguna, dan reward
  • Berbagi P&L – menghasilkan tangkapan layar posisi yang dapat dibagikan
Penting: Penempatan order itu sendiri ditangani oleh API Orderly Network. Layanan ini fokus pada dukungan frontend dan metadata.

Gambaran Arsitektur

Sistem Perps terdiri dari dua komponen independen:
  1. Raydium Perp API (layanan ini) – Membaca konfigurasi, menyediakan data UI, menghasilkan gambar
  2. Orderly Network – Mengeksekusi order, mengelola posisi, dan settlement
Ketika pengguna menempatkan order perp melalui UI Raydium:
  1. UI mengambil konfigurasi pasar dari API ini (pool, RPC, ketersediaan)
  2. UI mengirim order ke API Orderly Network
  3. Orderly mengeksekusi order dan memelihara status posisi
  4. UI mengambil data posisi dan statistik dari API Orderly atau endpoint kampanye kami
Pemisahan ini memungkinkan Raydium mengelola metadata dan branding sementara Orderly menangani pekerjaan berat pencocokan order dan settlement.

Endpoint API Berdasarkan Kategori

Endpoint Utama

Informasi layanan inti dan pemeriksaan ketersediaan.

GET /main/version

Mengembalikan versi UI stabil terkini dan versi minimum yang didukung. Penggunaan: Periksa apakah versi UI klien masih didukung. Response:
{
  "id": "...",
  "success": true,
  "data": {
    "latest": "1.2.0",
    "least": "1.0.0"
  }
}

GET /main/rpcs

Mengembalikan endpoint RPC Solana terpilih untuk digunakan UI. Penggunaan: Isi pemilih RPC di UI; memastikan klien terhubung ke endpoint yang stabil dan disetujui Raydium.

GET /main/info

Mengembalikan statistik pasar luas. Penggunaan: Tampilkan volume 24h, 7h, 30h, dan open interest total/long/short di dashboard. Response:
{
  "id": "...",
  "success": true,
  "data": {
    "volume": {
      "24h": 1234567,
      "7d": 9876543,
      "30d": 50000000
    },
    "openInterest": {
      "long": 5000000,
      "short": 3000000,
      "all": 8000000
    }
  }
}

GET /main/availability-check

Memeriksa apakah trading perp tersedia di wilayah pengguna. Penggunaan: Peringatkan atau batasi akses di wilayah yang dibatasi (mis., USA). Cara kerjanya:
  • Membaca header cf-ipcountry dari Cloudflare (jika berada di belakang Cloudflare)
  • Kembali ke konfigurasi default jika header tidak ada
  • Mengembalikan status ketersediaan per wilayah
Response:
{
  "id": "...",
  "success": true,
  "data": {
    "available": true,
    "country": "US"
  }
}

GET /main/temp-key?wallet=...

Menghasilkan keypair Ed25519 sementara untuk autentikasi awal atau penandatanganan sementara. Penggunaan: Pembuatan kunci sementara non-custodial untuk alur otentikasi tertentu. Response:
{
  "id": "...",
  "success": true,
  "data": {
    "key": "ed25519:AAAA..."
  }
}

Endpoint Pool

Konfigurasi pasar perpetual.

GET /pool/default-list

Mengembalikan daftar pasar perp default dengan volume 24h/7h/30h. Penggunaan: Isi pemilih pasar atau widget dashboard dengan pasangan perp yang tersedia. Response:
{
  "id": "...",
  "success": true,
  "data": [
    {
      "symbol": "BTC/USDC",
      "volume24h": "1000000",
      "volume7d": "7000000",
      "volume30d": "30000000"
    }
  ]
}

Endpoint Kampanye

Leaderboard, statistik pengguna, dan data reward.

GET /campaign/configs

Mengembalikan parameter dan aturan kampanye aktif. Penggunaan: Tampilkan syarat kampanye dan persyaratan partisipasi di UI.

GET /campaign/user?wallet=...&index=0

Mengembalikan statistik kampanye pengguna (volume, P&L, skor, reward yang diperoleh). Penggunaan: Tampilkan di profil pengguna atau dashboard akun. Response (pengguna tanpa riwayat default ke data bernol):
{
  "id": "...",
  "success": true,
  "data": {
    "userInfo": {
      "index": "42",
      "walletAddress": "11111...1111",
      "volume": 500000,
      "pnl": 25000,
      "pnlW": 22500,
      "score": 850,
      "rewards": [...]
    }
  }
}

GET /campaign/list?index=0

Mengembalikan leaderboard untuk indeks kampanye tertentu (dipaginasi). Penggunaan: Tampilkan trader teratas dan peringkat. Response:
{
  "id": "...",
  "success": true,
  "data": {
    "updateTime": 1699999999000,
    "rows": [
      {
        "rank": 1,
        "wallet": "11111...1111",
        "volume": 5000000,
        "pnl": 250000,
        "score": 9500
      }
    ]
  }
}

Endpoint Berbagi

Hasilkan tangkapan layar posisi yang dapat dibagikan.

POST /share/position

Menghasilkan gambar yang dapat dibagikan dari posisi perp pengguna saat ini. Penggunaan: Berbagi sosial (Twitter, Discord) posisi aktif. Request:
{
  "symbol": "BTC/USDC",
  "side": "long",
  "size": "0.5",
  "entryPrice": "45000",
  "markPrice": "46000",
  "pnl": "500",
  "leverage": "5x"
}
Response:
{
  "id": "...",
  "success": true,
  "data": {
    "imgFileName": "abc123def456",
    "msg": "Position image generated"
  }
}

POST /share/history-position

Menghasilkan gambar yang dapat dibagikan dari posisi tertutup dengan P&L yang direalisasikan. Penggunaan: Bagikan perdagangan tertutup dengan detail profit/loss. Request:
{
  "symbol": "ETH/USDC",
  "side": "short",
  "size": "10",
  "entryPrice": "2500",
  "exitPrice": "2450",
  "realizedPnl": "500"
}
Response: Sama dengan /share/position.

Envelope Response

Semua endpoint mengembalikan envelope standar:
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "success": true,
  "data": { ... }
}
Pada error:
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "success": false,
  "msg": "Error message or code"
}

Caching

Sebagian besar endpoint mengembalikan header cache-control: max-age=60, yang berarti:
  • Hasil di-cache di sisi server dan diperbarui setiap 60 detik
  • Klien juga dapat melakukan cache selama 60 detik untuk mengurangi beban
  • Data real-time tidak dijamin; harapkan kedaluwarsa 0–60 detik

Ketersediaan Regional

Pembatasan regional ditangani melalui header cf-ipcountry (Cloudflare). Wilayah dan pembatasan yang didukung dikonfigurasi di sisi server dan diperbarui secara berkala.

Network Endpoints

LingkunganHost
Productionapi-perp-v1.raydium.io
Tidak ada versi devnet yang tersedia; trading perp hanya di mainnet.

Integrasi dengan Orderly Network

Untuk menempatkan order:
  1. Panggil /campaign/user atau /main/info untuk mengambil metadata dan tampilkan kepada pengguna
  2. Kirim order ke API Orderly Network (bukan API ini)
  3. Orderly mengembalikan konfirmasi perdagangan dan status posisi
  4. Panggil /campaign/user lagi nanti untuk melihat statistik yang diperbarui
API perp Raydium tidak menangani penempatan order; API ini murni read-only untuk metadata dan konfigurasi.

Lihat Juga