Mainnet Live ยท Chain ID 713714

Vordium Documentation

The AI Layer for Crypto

Vordium is a high-performance EVM blockchain designed for autonomous AI agents. Sub-135ms block time with VordiumBFT consensus, full EVM compatibility, and native agent support โ€” everything you need to deploy autonomous strategies on-chain.

Quick Start

Up and running in 60 seconds.

Step 1 โ€” Install the SDK

bash
pip install vordium

Step 2 โ€” Create your agent

python
from vordium import Agent

agent = Agent()
print(agent.address)
# 0x742d35Cc6634C0532925a3b8D4C9D5...
print(agent.balance)
# 100.0 VORD

Step 3 โ€” Get testnet VORD

python
agent.fund()
# Funded with 100 VORD โœ…

Step 4 โ€” Run autonomously

python
import asyncio
from vordium import Agent

agent = Agent()

async def strategy(agent):
    print(f"Block: {agent.block}")
    print(f"Balance: {agent.balance} VORD")

asyncio.run(agent.run(strategy=strategy))

Installation

Get the Vordium SDK running locally.

Python (recommended)

bash
pip install vordium

Verify installation

bash
vordium status
# Chain:    Vordium Chain
# Block:    5,026,000
# Status:   ๐ŸŸข Online

From source

bash
git clone https://github.com/Vordium/vordium-py
cd vordium-py
pip install -e .

Requirements

  • Python 3.8+
  • pip

AI Agents SDK Overview

Build autonomous agents that live on-chain.

The Vordium SDK is a first-class Python library for building AI agents that interact directly with Vordium Chain. It abstracts wallet management, transaction signing, balance tracking, and async execution โ€” so you can focus on strategy logic.

What you can build

  • Trading agents โ€” autonomous market-making, arbitrage, momentum strategies.
  • AI-driven agents โ€” LLMs making decisions on-chain via Claude or GPT-4.
  • Monitoring bots โ€” react to block events, balance changes, contract calls.
  • Protocol automation โ€” keeper bots, liquidators, yield optimizers.

Python SDK

Full reference for vordium v0.2.0 โ€” install with pip install vordium

VordiumClient

python
from vordium import VordiumClient

client = VordiumClient("0x_your_private_key")

Prices & Markets

python
markets = client.get_markets()          # All perp markets with prices
rates = client.get_funding_rates()      # Current funding rates
pool = client.get_pool_stats()          # VLP pool mark-to-market

Perpetual Trading

python
# Open a long position
result = client.open_position(
    pair_id=1,       # ETH=1, BTC=2, BNB=3, SOL=4, ARB=6, AVAX=8
    is_long=True,
    margin=10.0,     # $10 USDC
    leverage=5,
)

# Get open positions
positions = client.get_positions()

# Close a position (full or partial)
client.close_position(position_id=1)
client.close_position(position_id=1, close_size=0.005)

# Set take-profit and stop-loss
client.set_tp_sl(
    position_id=1,
    tp_price=2500.0,
    sl_price=2100.0,
)

Order Book

python
book = client.get_orderbook(pair_id=1)  # ETH order book
stats = client.get_stats()              # Engine health & stats

Pair IDs

SymbolPair IDMax Leverage
ETH150x
BTC250x
BNB320x
SOL420x
ARB610x
AVAX810x

JavaScript SDK

Connect to Vordium via ethers.js or the engine REST API.

Direct RPC (ethers.js)

javascript
import { ethers } from "ethers";

const provider = new ethers.JsonRpcProvider(
  "https://rpc.vordium.com", 713714, { staticNetwork: true }
);
const block = await provider.getBlockNumber();
console.log("Block:", block);

Engine API (REST)

VordCore exposes REST endpoints for trading:

javascript
const ENGINE = "https://rpc.vordium.com";

// Get markets and prices
const markets = await fetch(`${ENGINE}/v1/perp/markets`).then(r => r.json());

// Get positions for a wallet
const positions = await fetch(`${ENGINE}/v1/perp/positions/${address}`).then(r => r.json());

// Get funding rates
const funding = await fetch(`${ENGINE}/v1/funding`).then(r => r.json());

// Get pool mark-to-market value
const pool = await fetch(`${ENGINE}/v1/pool`).then(r => r.json());

// Get engine stats
const stats = await fetch(`${ENGINE}/stats`).then(r => r.json());

Open a Perp Position

javascript
import { ethers } from "ethers";

const sessionWallet = new ethers.Wallet(SESSION_KEY);
const payload = {
  action: "perp_open",
  wallet: ownerAddress,
  pairId: 1,           // ETH
  isLong: true,
  leverage: 5,
  margin: "10.000000", // $10 USDC
};

const signature = await sessionWallet.signMessage(JSON.stringify(payload));

const result = await fetch(`${ENGINE}/v1/perp/open`, {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ ...payload, signature, sessionWallet: sessionWallet.address }),
}).then(r => r.json());

console.log("Position ID:", result.positionId);

CLI Reference

The vordium command.

Initialize agent

bash
vordium init

Check chain status

bash
vordium status

Check balance

bash
vordium balance
vordium balance 0x...

Get testnet VORD

bash
vordium fund

Send VORD

bash
vordium send 0xRecipient 10.0

Run an agent script

bash
vordium run my_agent.py

Interactive mode

bash
vordium

Examples

Real agent patterns you can copy.

Example 1 โ€” Hello Vordium

python
from vordium import Agent, Chain

chain = Chain()
print(f"Block: {chain.block_number:,}")
print(f"Connected: {chain.connected}")

agent = Agent()
print(f"Address: {agent.address}")
print(f"Balance: {agent.balance} VORD")

Example 2 โ€” Autonomous Agent

python
import asyncio
from vordium import Agent

agent = Agent()

async def my_strategy(agent):
    block = agent.block
    balance = agent.balance
    print(f"Block {block:,} | {balance:.4f} VORD")
    # Add your trading logic here

asyncio.run(agent.run(
    strategy=my_strategy,
    interval=1.0  # Run every second
))

Example 3 โ€” Send VORD

python
from vordium import Agent

agent = Agent()
print(f"Balance: {agent.balance} VORD")

tx = agent.send(
    to="0xRecipient...",
    amount=10.0
)
print(f"Sent! TX: {tx}")

Example 4 โ€” Claude AI Agent

Use Claude Opus 4.6 to make live trading decisions.

python
import asyncio
from anthropic import Anthropic
from vordium import Agent

claude = Anthropic()
agent = Agent()

async def ai_strategy(agent):
    response = claude.messages.create(
        model="claude-opus-4-6",
        max_tokens=200,
        messages=[{
            "role": "user",
            "content": f"""
You are a trading agent on Vordium Chain.
Block: {agent.block}
Balance: {agent.balance} VORD

What should I do? Reply with one word:
BUY, SELL, or HOLD
"""
        }]
    )
    decision = response.content[0].text.strip()
    print(f"AI Decision: {decision}")

asyncio.run(agent.run(strategy=ai_strategy))

VordiumBFT Consensus

Sub-135ms block time. Instant finality. The fastest EVM chain.

What is VordiumBFT?

VordiumBFT is a custom Byzantine Fault Tolerant consensus engine built for Vordium Chain. It achieves ~135ms block times with single-slot finality โ€” once a block is produced, it is final. No reorgs. No confirmation waits.

How it works

VordiumBFT uses a streamlined propose-vote-commit pipeline optimized for low-latency environments:

  • Block proposer broadcasts a new block
  • Validators vote in a single round
  • 2/3+ votes = block is committed and final
  • No multi-round finality gadget needed

The 2-Validator Architecture

During the current testnet/early mainnet phase, Vordium runs with 2 validators operated by the core team. This enables maximum throughput (~135ms blocks) while maintaining BFT guarantees. The validator set will expand progressively as the network stabilizes.

ParameterValue
Block Time~135ms
FinalitySingle-slot (instant)
Validators4 (Skynet, Forge, Vortex, Castor)
Fault ToleranceBFT (tolerates 1 faulty)
EVM CompatibilityFull (Shanghai+)

Why not Tendermint/CometBFT?

Standard CometBFT achieves ~400ms blocks. VordiumBFT strips unnecessary overhead โ€” no mempool gossip delay, no prevote/precommit rounds, no separate ABCI layer โ€” to cut block time by 3x. The tradeoff is a smaller initial validator set, which is acceptable for a trading-focused chain where speed matters more than decentralization in the early phase.

Perpetuals Trading Guide

How to trade perpetual futures on Vordex.

Overview

Vordex perpetual futures are executed by VordCore, the native execution layer. VordCore handles order matching, TP/SL monitoring, liquidation checks, funding rate calculation, and settlement. All operations execute with instant BFT finality on Vordium Chain.

Available Markets

PairMax LeverageMaintenance MarginTaker Fee
ETH/USDC50x2%0.030%
BTC/USDC50x2%0.030%
BNB/USDC20x5%0.030%
SOL/USDC20x5%0.030%
ARB/USDC10x10%0.030%
AVAX/USDC10x10%0.030%

How it works

  1. Deposit USDC to your Vordex vault via the Arbitrum bridge
  2. Enable trading by creating a session key (signs trades without your main wallet)
  3. Open a position โ€” choose pair, leverage (up to 50x), and margin
  4. Set TP/SL โ€” the engine monitors prices every second and auto-closes at your targets
  5. Close โ€” full or partial close at market price

Funding Rates

Funding is charged hourly using the Hyperliquid/Lighter formula: rate = avgPremium + clamp(interestRate - avgPremium). Base rate: 0.01% per 8 hours. When rate is positive, longs pay shorts. When negative, shorts pay longs. The pool (VLP) is not involved in funding โ€” it is purely peer-to-peer.

Liquidation

Positions are liquidated when equity falls below the maintenance margin. The liquidation engine checks every block. If a liquidation creates bad debt (loss exceeds margin), ADL (auto-deleveraging) engages to close the most profitable opposing positions.

VLP Pool

The VLP pool acts as counterparty to all trades. Depositors earn when traders lose, and lose when traders win. Pool value is marked-to-market in real time. Deposits have a 1-hour lockup (testnet). The pool's realPoolValue is available at /v1/pool.

Session Keys

Trade without signing every transaction.

What are Session Keys?

Session keys are temporary signing keys that authorize VordCore to execute trades on your behalf. Your main wallet stays safe โ€” it never signs trade transactions directly. This is the same model used by Hyperliquid.

How it works

  1. Go to the Portfolio page and click Enable Trading
  2. Your wallet signs a single on-chain transaction to register a session key
  3. The session key is stored in your browser (localStorage)
  4. All subsequent trades are signed by the session key, not your main wallet
  5. Sessions expire after a set duration (currently 24 hours)

Security

Session keys can only execute trades โ€” they cannot withdraw funds or transfer ownership. If a session key is compromised, an attacker could only place trades (which are bounded by your vault balance and position limits). You can revoke a session at any time from the Portfolio page.

VordCore Session API

bash
# Sessions are managed by VordCore natively (no on-chain contract)

# Create session (EIP-712 signed)
POST https://rpc.vordium.com/session/create
Body: { owner, session_key, expires_at, signature }

# Check session validity
GET https://rpc.vordium.com/session/valid?owner=0x...&session_key=0x...
function createSession(address sessionWallet, uint256 duration)

Bridge Guide (Arbitrum)

Move USDC from Arbitrum to Vordium and back.

How Bridging Works

Vordex uses a bridge relayer that watches deposits on the Arbitrum side and mints equivalent BUSDC (Bridged USDC) on Vordium. BUSDC is the trading currency on Vordex โ€” it has 6 decimals and is pegged 1:1 to USDC.

Deposit (Arbitrum โ†’ Vordium)

  1. Go to the Portfolio page
  2. Click Deposit โ€” this connects to the Arbitrum bridge contract
  3. Approve and deposit USDC on Arbitrum
  4. The relayer detects your deposit and credits your Vordex vault within ~30 seconds
  5. Your BUSDC appears in your vault freeBalance

Withdraw (Vordium โ†’ Arbitrum)

  1. Go to Portfolio and click Withdraw
  2. Enter the amount โ€” a withdrawal request is submitted on Vordium
  3. The relayer processes the withdrawal and sends USDC to your wallet on Arbitrum
  4. Minimum withdrawal: $1 USDC. Withdraw fee: $1 USDC

Contracts

ContractChainAddress
VordexBridgeArbitrum0x529A982c1f5B05A4515a5bF11efF23daFAE02E4d
BridgedUSDCVordium0x000000000000000000000000000000000000100a
VordexVaultVordium0x0000000000000000000000000000000000001002

Network Information

Everything you need to connect to Vordium Chain.

ParameterValue
Network NameVordium Chain
Chain ID713714
TokenVORD
Decimals18
RPC URLhttps://rpc.vordium.com
WebSocketwss://rpc.vordium.com/ws
Explorerhttps://vordscan.io
Faucethttps://faucet.vordium.com
Block Time~135ms (VordiumBFT)
FinalityInstant

Add to Wallet

One click to add Vordium Chain to MetaMask.

Manual setup

Network NameVordium Chain
RPC URLhttps://rpc.vordium.com
Chain ID713714
Currency SymbolVORD
Block Explorerhttps://vordscan.io

RPC Endpoints

Public endpoints for Vordium Chain.

ProtocolEndpoint
Primary RPChttps://rpc.vordium.com
WebSocketwss://rpc.vordium.com/ws
Skynet Validatorhttps://skynet.rpc.vordium.com
Forge Validatorhttps://forge.rpc.vordium.com
Vortex Validatorhttps://vortex.rpc.vordium.com
Castor Validatorhttps://castor.rpc.vordium.com
Explorerhttps://vordscan.io
Chain Confighttps://rpc.vordium.com/chain-config

All endpoints are CORS-enabled. Primary RPC accepts both Ethereum JSON-RPC and VordCore REST API calls.

Block Explorer

VordScan โ€” view every transaction on Vordium.

VordScan is a fully-featured block explorer for Vordium Chain. Search by address, transaction hash, block number, or token.

Open VordScan โ†’

VRC-20 Tokens

Vordium's fungible token standard.

VRC-20 extends ERC-20 with Vordium-specific features including on-chain chain verification.

New functions

solidity
chainId()        // returns 713714
tokenStandard()  // returns "VRC-20"
nativeChain()    // returns "Vordium"

Deploy a VRC-20

bash
pip install vordium
vordium init

Deploy with Foundry

bash
forge create VRC20.sol:VRC20 \
  --rpc-url https://rpc.vordium.com \
  --private-key $PRIVATE_KEY \
  --constructor-args "MyToken" "MTK" 18 1000000

VRC-721 NFTs

Non-fungible tokens on Vordium.

Reference Contract
0xD75c82c33c8642150d0485fCE330fD9FE44b9dC0
solidity
tokenStandard()  // returns "VRC-721"
chainId()        // returns 713714

VRC-1155 Multi-Token

Multi-token standard for fungible + non-fungible assets in one contract.

Reference Contract
0x90811A8D1e19BE8030D18B9C61b566A676d82f1A
solidity
tokenStandard()  // returns "VRC-1155"
chainId()        // returns 713714

Deploy a Contract

Full guide to deploying Solidity contracts on Vordium.

Step 1 โ€” Install Foundry

bash
curl -L https://foundry.paradigm.xyz | bash
source ~/.bashrc
foundryup

Step 2 โ€” Create an ERC-20

solidity
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract MyToken is ERC20 {
    constructor() ERC20("My Token", "MTK") {
        _mint(msg.sender, 1000000 * 10**18);
    }
}

Step 3 โ€” Deploy

bash
forge create MyToken.sol:MyToken \
  --rpc-url https://rpc.vordium.com \
  --private-key $PRIVATE_KEY

Step 4 โ€” Verify on VordScan

  1. Open vordscan.io
  2. Search your contract address
  3. Submit source for verification

Verify Contract

Publish source code on VordScan.

Open your contract page on vordscan.io, click Verify Contract, paste your Solidity source, select the compiler version, and submit. Verified contracts display source, ABI, and a read/write UI.

RPC API Reference

Standard Ethereum JSON-RPC over HTTPS.

Endpointhttps://rpc.vordium.com
MethodPOST
Content-Typeapplication/json

Get block number

bash
curl -X POST https://rpc.vordium.com \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_blockNumber",
    "params": [],
    "id": 1
  }'

Response:

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": "0x155a76"
}

Get balance

bash
curl -X POST https://rpc.vordium.com \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getBalance",
    "params": ["0x...", "latest"],
    "id": 1
  }'

Get chain ID

bash
curl -X POST https://rpc.vordium.com \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_chainId",
    "params": [],
    "id": 1
  }'

Response: {"result": "0xae3f2"}

Supported methods

text
eth_chainId
eth_blockNumber
eth_getBalance
eth_sendRawTransaction
eth_getTransactionByHash
eth_getTransactionReceipt
eth_call
eth_estimateGas
eth_gasPrice
net_version
web3_clientVersion

WebSocket Guide

Subscribe to real-time chain events.

javascript
const ws = new WebSocket("wss://rpc.vordium.com/ws");

ws.onopen = () => {
  ws.send(JSON.stringify({
    jsonrpc: "2.0",
    id: 1,
    method: "eth_subscribe",
    params: ["newHeads"]
  }));
};

ws.onmessage = (e) => {
  const data = JSON.parse(e.data);
  console.log("New block:", data);
};

Vordex Trading Guide

Trade on the Vordium Chain decentralized exchange.

Vordex is the native DEX on Vordium Chain, featuring an on-chain orderbook with 10 trading pairs and support for AI agent trading.

Open Vordex โ†’

Getting started

  1. Connect MetaMask โ€” visit app.vordex.io and connect your wallet.
  2. Switch to Vordium Chain โ€” ensure your wallet is on Chain ID 713714.
  3. Deposit USDC to vault โ€” you must deposit USDC into the Vault contract before placing orders.
  4. Place orders โ€” choose a trading pair and place limit or market orders.

Key details

ParameterValue
URLhttps://app.vordex.io
Trading Pairs10 (ETH, BTC, BNB, SOL, POL, ARB, OP, AVAX, LINK, UNI)
Trading Fee0.035%
Order TypesLimit, Market
SettlementOn-chain via Orderbook contract

AI agent trading

AI agents can trade programmatically by interacting with the Orderbook contract directly. Deposit USDC to the Vault, then call placeOrder or placeMarketOrder on the Orderbook contract to execute trades.

Vordex API

REST API for market data, trading, and account management.

Base URL: https://rpc.vordium.com. All endpoints return JSON with { success, data, timestamp }. Query parameter ?network=mainnet|testnet selects the network (default varies by endpoint).

Market Data

GET /health

bash
curl https://rpc.vordium.com/health
json
{ "status": "ok", "chain": "Vordium", "chainId": 713714 }

GET /v1/price/:symbol

Oracle price for a single symbol.

bash
curl https://rpc.vordium.com/v1/price/ETH
json
{ "symbol": "ETH", "pair": "ETH/USDC", "pairId": 1, "price": "2184.71" }

GET /v1/price/all

Oracle prices for all 11 trading pairs. Cached for 3 seconds.

bash
curl https://rpc.vordium.com/v1/price/all

GET /v1/candles/:symbol

OHLCV candlestick data. Intervals: 1m, 3m, 5m, 15m, 30m, 1h, 4h, 1d. Max 500 candles.

bash
curl "https://rpc.vordium.com/v1/candles/ETH?interval=1h&limit=100"
json
{
  "data": [
    { "time": 1775739600, "open": "2183.33", "high": "2186.54", "low": "2158.19", "close": "2165.22", "volume": "16119.36" }
  ],
  "symbol": "ETH", "interval": "1h", "count": 100
}

GET /v1/trades/:symbol

Recent on-chain trades from TradeExecuted events. Max 200.

bash
curl "https://rpc.vordium.com/v1/trades/ETH?network=mainnet&limit=50"
json
{
  "data": [
    { "symbol": "ETH", "price": "2184.50", "amount": "0.5", "buyer": "0x...", "seller": "0x...", "buyerIsAgent": true, "txHash": "0x..." }
  ]
}

GET /v1/orderbook/:symbol

Live orderbook with bids and asks. Params: ?network=mainnet&depth=10 (max 50).

bash
curl "https://rpc.vordium.com/v1/orderbook/ETH?network=mainnet&depth=10"
json
{
  "data": {
    "symbol": "ETH", "midPrice": "2184.710000",
    "bids": [{ "id": "42", "price": "2184.00", "amount": "1.5", "isAgent": false }],
    "asks": [{ "id": "43", "price": "2185.00", "amount": "2.0", "isAgent": true }]
  }
}

Trading

POST /v1/order

Place a signed limit or market order. The API verifies the signature and relays the transaction on-chain.

bash
curl -X POST https://rpc.vordium.com/v1/order \
  -H "Content-Type: application/json" \
  -d '{
    "symbol": "ETH",
    "side": "buy",
    "type": "limit",
    "price": "2000.0",
    "amount": "0.1",
    "network": "testnet",
    "trader": "0xYourAddress",
    "signature": "0xSignedMessage",
    "nonce": 1712678400
  }'

Signature: Sign keccak256(abi.encodePacked(symbol, side, type, price, amount, nonce)) with the trader's private key.

json
{
  "data": { "orderId": "123", "symbol": "ETH", "side": "buy", "price": "2000.0", "amount": "0.1", "status": "open", "txHash": "0x..." }
}

POST /v1/order/batch

Place up to 10 orders in a single request. All orders are submitted sequentially on-chain.

bash
curl -X POST https://rpc.vordium.com/v1/order/batch \
  -H "Content-Type: application/json" \
  -d '{
    "orders": [
      { "symbol": "ETH", "side": "buy", "price": "2000", "amount": "0.1" },
      { "symbol": "BTC", "side": "sell", "price": "72000", "amount": "0.01" }
    ],
    "trader": "0xYourAddress",
    "signature": "0xSignedMessage",
    "nonce": 1712678400,
    "network": "testnet"
  }'

Signature: Sign keccak256(abi.encodePacked("batch", orderSummary, nonce)) where orderSummary is each order's fields concatenated.

DELETE /v1/order/:orderId

Cancel a specific order by ID. Verifies the signature and that the order belongs to the trader.

bash
curl -X DELETE https://rpc.vordium.com/v1/order/42 \
  -H "Content-Type: application/json" \
  -d '{
    "trader": "0xYourAddress",
    "signature": "0xSignedMessage",
    "nonce": 1712678400,
    "network": "testnet"
  }'

Signature: Sign keccak256(abi.encodePacked("cancel", orderId, nonce)).

DELETE /v1/order/cancel-all

Cancel all open orders for a trader. Finds open/partial orders and cancels each on-chain.

bash
curl -X DELETE https://rpc.vordium.com/v1/order/cancel-all \
  -H "Content-Type: application/json" \
  -d '{
    "trader": "0xYourAddress",
    "signature": "0xSignedMessage",
    "nonce": 1712678400,
    "network": "testnet"
  }'

Signature: Sign keccak256(abi.encodePacked("cancel-all", nonce)).

json
{
  "data": { "trader": "0x...", "totalOrders": 15, "openOrders": 3, "cancelled": 3, "cancelledIds": ["10", "12", "14"] }
}

Account & Orders

GET /v1/account/:address

Vault balances and agent status. Params: ?network=mainnet.

bash
curl "https://rpc.vordium.com/v1/account/0xYourAddress?network=mainnet"
json
{
  "data": { "address": "0x...", "freeBalance": "10000.00", "lockedBalance": "2500.00", "totalBalance": "12500.00", "isAgent": false }
}

GET /v1/orders/:address

Last 50 orders for a trader with status, fill amount, and agent flag.

bash
curl "https://rpc.vordium.com/v1/orders/0xYourAddress?network=mainnet"

GET /v1/fills/:address

Recent fill history from TradeExecuted events. Shows buys and sells for the address.

bash
curl "https://rpc.vordium.com/v1/fills/0xYourAddress?network=mainnet"
json
{
  "data": [
    { "symbol": "ETH", "side": "buy", "price": "2184.50", "amount": "0.5", "usdcSettled": "1092.25", "txHash": "0x..." }
  ]
}

Protocol

GET /v1/agents

List all registered AI agents with trade stats.

bash
curl https://rpc.vordium.com/v1/agents

GET /v1/agents/:address

Check if an address is a registered agent.

bash
curl https://rpc.vordium.com/v1/agents/0xAgentAddress

GET /v1/stats

Protocol-wide statistics: TVL, total orders, agent vs human trade counts.

bash
curl https://rpc.vordium.com/v1/stats
json
{
  "data": { "totalPairs": 11, "totalOrders": 0, "tvl": "500.0", "agentTrades": 0, "humanTrades": 0 }
}

GET /v1/leaderboard

Top traders ranked by volume. Params: ?type=agents|all&network=mainnet.

bash
curl "https://rpc.vordium.com/v1/leaderboard?type=agents"

GET /v1/pairs

All available trading pairs with pair IDs.

bash
curl https://rpc.vordium.com/v1/pairs

GET /v1/network

Chain info, block height, and all contract addresses.

bash
curl https://rpc.vordium.com/v1/network

All 18 endpoints

MethodEndpointDescription
GET/healthHealth check
GET/v1/price/:symbolOracle price for a symbol
GET/v1/price/allAll oracle prices (cached 3s)
GET/v1/candles/:symbolOHLCV candles (1m to 1d)
GET/v1/trades/:symbolRecent on-chain trades
GET/v1/orderbook/:symbolLive orderbook bids/asks
POST/v1/orderPlace a signed order (limit or market)
POST/v1/order/batchPlace up to 10 orders at once
DELETE/v1/order/cancel-allCancel all open orders
DELETE/v1/order/:orderIdCancel a specific order
GET/v1/account/:addressVault balances + agent status
GET/v1/orders/:addressTrader's order history
GET/v1/fills/:addressTrade fill history
GET/v1/agentsAll registered agents
GET/v1/agents/:addressCheck if address is agent
GET/v1/statsProtocol stats (TVL, orders, AI ratio)
GET/v1/leaderboardTop traders by volume
GET/v1/pairsTrading pairs with IDs
GET/v1/networkChain info + contract addresses

Orderbook

VordCore native orderbook for all trading pairs.

The orderbook is managed natively by VordCore. There is no on-chain orderbook contract. All order placement, matching, and settlement happen through the VordCore execution layer with instant BFT finality. Prices are in 1e6 format (e.g. ETH at $2300 = 2300000000). Sizes are in 1e18 format.

Side values

  • 0 = Buy
  • 1 = Sell

Pair IDs

PairID
ETH1
BTC2
BNB3
SOL4
POL5
ARB6
OP7
AVAX8
LINK9
UNI10
DOGE11
XRP12
ADA13
DOT14
SUI15

VordCore API

bash
# Place an order (requires session key)
POST https://rpc.vordium.com/order/place
Body: { pair_id, side: "Buy"|"Sell", size, owner, session_key, order_type: "Market"|"Limit", price, leverage, signature }

# Cancel an order
POST https://rpc.vordium.com/order/cancel
Body: { order_id, owner, signature, session_key }

# Get orderbook
GET https://rpc.vordium.com/orderbook/{pair_id}

# Get open orders for address
GET https://rpc.vordium.com/orders/{address}
function getAvailableLiquidity(uint256 pairId, uint8 side, uint256 worstPrice) external view returns (uint256);
function getPairBids(uint256 pairId) external view returns (Order[] memory);
function getPairAsks(uint256 pairId) external view returns (Order[] memory);

Example โ€” Place a limit buy order

javascript
// Place a limit order via VordCore REST API
const res = await fetch("https://rpc.vordium.com/order/place", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    pair_id: 1,              // ETH
    side: "Buy",
    order_type: "Limit",
    price: 2300000000,       // $2300 in 1e6 format
    size: 1000000000000000000, // 1 ETH in 1e18
const amount = ethers.parseUnits("1", 18);       // Token has 18 decimals

const tx = await orderbook.placeOrder(pairId, side, price, amount);
await tx.wait();
console.log("Order placed:", tx.hash);

Vault

USDC vault for Vordex trading collateral.

Users must deposit USDC into the Vault before placing orders on the Orderbook. The Vault tracks free and locked balances per user. Locked balance represents funds tied to open orders.

VordexVault
0x0000000000000000000000000000000000001002
BridgedUSDC
0x000000000000000000000000000000000000100a

USDC on Vordium uses 6 decimals.

Functions

solidity
// Deposit USDC into the vault
function deposit(uint256 amount) external;

// Withdraw free USDC from the vault
function withdraw(uint256 amount) external;

// Emergency withdraw all funds (may cancel open orders)
function emergencyWithdraw() external;

// Read balances
function getFreeBalance(address user) external view returns (uint256);
function getLockedBalance(address user) external view returns (uint256);
function getTotalBalance(address user) external view returns (uint256);

Example โ€” Deposit USDC

javascript
import { ethers } from "ethers";

const provider = new ethers.JsonRpcProvider("https://rpc.vordium.com");
const signer = new ethers.Wallet("0xYOUR_PRIVATE_KEY", provider);

const usdc = new ethers.Contract(
  "0x000000000000000000000000000000000000100a",
  ["function approve(address,uint256) returns (bool)"],
  signer
);

const vault = new ethers.Contract(
  "0x0000000000000000000000000000000000001002",
  ["function deposit(uint256)"],
  signer
);

const amount = ethers.parseUnits("10000", 6); // 10,000 USDC

// Approve vault to spend USDC
await (await usdc.approve(vault.target, amount)).wait();

// Deposit into vault
await (await vault.deposit(amount)).wait();
console.log("Deposited 10,000 USDC");

Oracle

VordCore native oracle with 8 CEX sources.

VordCore aggregates prices from 8 centralized exchanges: Binance, OKX, Bybit, Kraken, KuCoin, Gate.io, MEXC, and its own mid price. Outlier rejection ensures accuracy. There is no on-chain oracle contract.

REST API

bash
# Get oracle price for a pair
GET https://rpc.vordium.com/oracle/{pair_id}

# Response:
{
  "pair_id": 1,
  "oracle_price": 2310905000,    // price * 1e6
  "mark_price": 2310907500,
  "index_price": 2310905000,
  "sources_used": 7,
  "funding_rate_bps": 1,
  "change_24h_pct": -0.0793,
  "high_24h": 2312.74,
  "low_24h": 2310.90,
  "volume_24h": 169179021.54
}

Pair IDs: ETH=1, BTC=2, BNB=3, SOL=4, POL=5, ARB=6, OP=7, AVAX=8, LINK=9, UNI=10, DOGE=11, XRP=12, ADA=13, DOT=14, SUI=15.

Example โ€” Read ETH price

javascript
const res = await fetch("https://rpc.vordium.com/oracle/1");
const data = await res.json();
const ethPrice = data.oracle_price / 1e6;
console.log("ETH price:", ethPrice);        // e.g. 2310.90
console.log("24h change:", data.change_24h_pct + "%");
console.log("Sources used:", data.sources_used);

Agent Registry

On-chain registry for autonomous AI trading agents.

The Agent Registry contract tracks all registered AI agents on Vordium Chain, including their strategy types, trade counts, and volume.

Agent Registry
0x0EeEeb55d23fEca1115d58cDF82c9f656196123f

Agent struct

solidity
struct Agent {
    uint256 id;
    string name;
    string strategyType;
    address owner;
    address agentWallet;
    uint256 registeredAt;
    bool active;
    uint256 totalTrades;
    uint256 totalVolume;
}

Functions

solidity
// Get agent by ID
function getAgent(uint256 id) external view returns (Agent memory);

// Get total number of registered agents
function agentCount() external view returns (uint256);

// Check if an address is an active agent
function isActiveAgent(address addr) external view returns (bool);

Example โ€” Query agents

javascript
import { ethers } from "ethers";

const provider = new ethers.JsonRpcProvider("https://rpc.vordium.com");

const registry = new ethers.Contract(
  "0x0EeEeb55d23fEca1115d58cDF82c9f656196123f",
  [
    "function getAgent(uint256) view returns (tuple(uint256 id, string name, string strategyType, address owner, address agentWallet, uint256 registeredAt, bool active, uint256 totalTrades, uint256 totalVolume))",
    "function agentCount() view returns (uint256)",
    "function isActiveAgent(address) view returns (bool)"
  ],
  provider
);

const count = await registry.agentCount();
console.log("Total agents:", count.toString());

const agent = await registry.getAgent(1);
console.log("Agent #1:", agent.name, "| Strategy:", agent.strategyType);
console.log("Trades:", agent.totalTrades.toString());

Contract Addresses

All deployed contract addresses on Vordium Chain.

Genesis V4 contracts (Vordium Chain)

ContractAddress
PositionRecord0x0000000000000000000000000000000000001000
AssistanceFund (VLP)0x0000000000000000000000000000000000001001
VordexVault0x0000000000000000000000000000000000001002
FeeConfig0x0000000000000000000000000000000000001003
BuybackEngine0x0000000000000000000000000000000000001004
AgentRegistry0x0000000000000000000000000000000000001005
Bridge (Vordium)0x0000000000000000000000000000000000001007
StakingRewards0x0000000000000000000000000000000000001009
BridgedUSDC0x000000000000000000000000000000000000100a
InsuranceFund0x000000000000000000000000000000000000100b
AirdropClaimer0x000000000000000000000000000000000000100c
VestingVault0x000000000000000000000000000000000000100d
ReferralRegistry0x000000000000000000000000000000000000100e
ValidatorRegistry0x0000000000000000000000000000000000001013
VordCoreState0x7777777777777777777777777777777777777777

Arbitrum contracts

ContractAddress
Bridge (Arbitrum)0x529A982c1f5B05A4515a5bF11efF23daFAE02E4d
USDC (Arbitrum)0xaf88d065e77c8cC2239327C5EDb3A432268e5831

Trading pairs (ETH, BTC, BNB, SOL, etc.) are handled natively by VordCore. There are no individual ERC20 token contracts for trading pairs. Oracle, orderbook, and matching are all part of the VordCore native execution layer.