Base URL
All requests go to api.php on this host. Prefer POST with FormData / application/x-www-form-urlencoded. GET is accepted for read actions.
POST /api.php
Content-Type: multipart/form-data
action=plasma_promo_live
Endpoints
| action | Purpose | Auth |
|---|---|---|
| plasma_explorer_lookup | Balances, tokens, txs for an address (AI Wallet ledger + on-chain Plasma). | optional pass |
| plasma_explorer_pass | Create one-time k token so explorer can show full wallet history across domains. | seed / address |
| plasma_promo_live | XPL market (CoinGecko), sparkline, staking APY, gas, block, mempool, funding/OI, trade tape. | public |
| plasma_promo_pulse | Lightweight refresh (~8-12s): price, gas, block, mempool, fresh ticks. | public |
| plasma_mempool_feed | Real pending / latest txs from RPC (txpool or tip block). Params: limit. | public |
| plasma_recent_blocks | Last N tip blocks with timestamp, miner, gas %, base fee. Params: n. | public |
| plasma_balances_batch | XPL + USDT balances for a comma-separated address list (watchlist deltas). | public |
| plasma_address_labels | Public name tags (USDT contract + optional settings JSON). | public |
| plasma_get_tx | Full tx by hash (RPC + receipt + confirmations). Param: hash. | public |
| plasma_get_block | Block by number/hash. Params: block, optional full=1. | public |
| plasma_address_txs | Paginated on-chain history (Routescan). Params: address, page, offset. | public |
plasma_explorer_lookup
Parameters
| Field | Type | Notes |
|---|---|---|
| address | string | Plasma EOA 0x... (40 hex). |
| asset | string | all | xpl | usdt_plasma (and wallet symbols). |
| k | string | One-time explorer pass from plasma_explorer_pass. |
| secret_phrase | string | Only when viewing your own AI Wallet account (same-origin / trusted). |
Example
// Browser
const fd = new FormData();
fd.append('action', 'plasma_explorer_lookup');
fd.append('address', '0x...');
fd.append('asset', 'all');
const res = await fetch('api.php', { method: 'POST', body: fd });
const data = await res.json();
Response (shape)
{
"status": "success",
"address": "0x...",
"balances": { "xpl": 0, "usdt": 0 },
"tokens": [...],
"transactions": [...],
"source": "wallet|chain|merged"
}
plasma_promo_live / pulse
Used by sponsored banners, gas tracker and network status. Cached briefly server-side to protect CoinGecko / RPC.
{
"status": "success",
"xpl": { "price": 0.08, "change_24h": -3.2, "sparkline": [...], "volume_24h": 0 },
"gas": { "low": 0.8, "avg": 1.2, "high": 2.4, "eta_low": 10, "eta_avg": 5, "eta_high": 2 },
"network": { "latest_block": 0, "block_time_sec": 2, "mempool_pending": 24 },
"derivatives": { "funding_pct": 0.005, "oi_usd": 32000000 },
"meta": { "rpc_ms": 78 }
}
Try live:
Realism feeds
Explorer live stage uses these for honest mempool hashes, block ages, watchlist deltas, and name tags.
// Mempool
action=plasma_mempool_feed&limit=16
// Blocks
action=plasma_recent_blocks&n=5
// Watchlist balances
action=plasma_balances_batch&addresses=0xabc...,0xdef...
// Labels
action=plasma_address_labels
// Tx / Block / Address history
action=plasma_get_tx&hash=0x...
action=plasma_get_block&block=30877000&full=1
action=plasma_address_txs&address=0x...&page=1&offset=40
Errors & limits
- status: "error" with message on DB / validation failures.
- Promo feeds degrade gracefully to estimates if CoinGecko or RPC is slow.
- Do not expose seed phrases to third-party domains; use one-time k pass from AI Wallet.