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
Network 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
- Movement Explorer
- Get your API key
eth_coinbase
Check the legacy eth_coinbase compatibility method on Moonriver. Public endpoints may return an address, `unimplemented`, or another unsupported-method response depending on the client.
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.

