Movement Move REST API Guide
Production-ready docs for Movement's MoveVM interface. Movement exposes Aptos-compatible REST endpoints under /v1 for querying data and submitting transactions.
Movement RPC
With Dwellir, you get access to our global Movement network which always routes your API requests to the nearest available location, ensuring low latency and the fastest speeds.
Get your API keyWhy Build on Movement
- Move-first execution environment with resource-oriented safety
- BlockSTM parallel execution for high throughput
- 1–3 second fast finality UX
- Compatibility with existing Aptos tooling and REST schemas
Quick Start
Endpoints
curl -X GET https://api-movement-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>/v1 \ -H "Accept: application/json"import { Aptos, AptosConfig } from '@aptos-labs/ts-sdk';const client = new Aptos( new AptosConfig({ fullnode: 'https://api-movement-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>/v1' }));const ledger = await client.getLedgerInfo();console.log(ledger.chain_id);import requestsresp = requests.get('https://api-movement-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>/v1')print(resp.json())package mainimport ( "fmt" "io" "net/http")func main() { resp, err := http.Get("https://api-movement-mainnet.n.dwellir.com/<API_Keys_Are_Not_Made_for_Bots>/v1") if err != nil { panic(err) } defer resp.Body.Close() body, _ := io.ReadAll(resp.Body) fmt.Println(string(body))}SDK Installation
npm i @aptos-labs/ts-sdkimport { Aptos, AptosConfig, Network } from '@aptos-labs/ts-sdk';
const config = new AptosConfig({
network: Network.CUSTOM,
fullnode: 'https://api-movement-mainnet.n.dwellir.com/YOUR_API_KEY/v1'
});
const aptos = new Aptos(config);
const ledger = await aptos.getLedgerInfo();
console.log('Move chain ID:', ledger.chain_id);# Example usage placeholder. Configure your CLI with the endpoint above
# API Base: https://api-movement-mainnet.n.dwellir.com/YOUR_API_KEY/v1Network Information
| Parameter | Value | Details |
|---|---|---|
| API Base | /v1 | Aptos-compatible REST |
| Native Token | MOVE | |
| Finality | ~1–3s | Fast confirmations |
| Endpoint | https://api-movement-mainnet.n.dwellir.com/YOUR_API_KEY/v1 | Full REST base URL |
Move REST API Reference
Movement exposes Aptos-compatible REST APIs at /v1 for MoveVM operations.
- Accounts
- Account Resources
- Account Modules
- Blocks
- Transactions
- Transaction Encode
- Transaction Simulate
- Events
- Tables
- Ledger
- Health
Movement-Specific Features
Common Integration Patterns
- DEX or payments: leverage Move resources for precise asset accounting
- Data services: poll
/v1/blocksand/v1/transactionsfor real-time indexing - Custody/wallets: query account resources and event streams to reflect balances
Performance Best Practices
- Design for BlockSTM: avoid write conflicts to maximize parallelism
- Gas optimization: use Move simulations to estimate gas under load
- Finality-aware UX: consider 1–3s finality in confirmations and polling intervals
Migration Guides
- From Aptos: reuse Move modules with minimal changes; update REST base to Movement
/v1 - From Sui: port object/resource models to Move on Movement; adjust package layout
Troubleshooting
- Ensure correct address format (hex with
0xprefix) and fully qualified module/function IDs - Encode payloads with BCS and confirm signatures before submission
- Check
/v1/-/healthyfor node health and/v1/ledgerfor latest version
Resources & Tools
- Move SDKs: Aptos TypeScript & Python SDKs
- Explorer: https://explorer.movementnetwork.xyz/
- Get your API key: https://dashboard.dwellir.com/register
rpc_methods
List all available RPC methods on Moonriver. Essential for API discovery, capability detection, and building dynamic tooling for Substrate-based chains.
BlockSTM — Parallel Execution on Movement
Deep dive into Movement's BlockSTM parallel execution engine: how optimistic concurrency works, performance characteristics, and how to write Move smart contracts that maximize parallel throughput.

