# Movement Network API
> Live on-chain data for Movement Network (chain-id 126), a Move-based Layer 2 with an Aptos-compatible REST interface and the MOVE token. Read the ledger status — chain id, current epoch, ledger version, block height, ledger timestamp and node role — fetch any block by height (or the latest) with its hash, timestamp and first and last transaction versions, stream the most recent transactions with their version, hash, type, success flag, sender, gas used and VM status, and look up any account with its sequence number, authentication key and on-chain resource count. Addresses use the standard 0x hex form (for example 0x1, the Move framework account). A short protective cache keeps responses fast while staying within a few seconds of the chain. Distinct from other Layer-1 and Cosmos-chain APIs on the marketplace: this surfaces the Movement Network Move L2 specifically.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/movement-api/..."
```

## Pricing
- **Free** (Free) — 1,580 calls/Mo, 2 req/s
- **Basic** ($12/Mo) — 46,900 calls/Mo, 6 req/s
- **Pro** ($33/Mo) — 192,000 calls/Mo, 18 req/s
- **Scale** ($73/Mo) — 814,000 calls/Mo, 45 req/s

## Endpoints

### Chain

#### `GET /v1/status` — Ledger status

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/movement-api/v1/status"
```

**Response:**
```json
{
    "data": {
        "epoch": "10778736",
        "network": "Movement Mainnet",
        "chain_id": 126,
        "git_hash": "7a6e1c6",
        "node_role": "full_node",
        "block_height": "66024896",
        "ledger_version": "155441376",
        "ledger_timestamp": "1781522108566257",
        "oldest_block_height": "0",
        "oldest_ledger_version": "0"
    },
    "meta": {
        "timestamp": "2026-06-15T11:15:09.750Z",
        "request_id": "ad3c7c7a-7c6b-47f1-b53c-23cd38213738"
    },
    "status": "ok",
    "message": "Status retrieved successfully",
    "success": true
}
```

### Blocks

#### `GET /v1/block` — Block by height (latest if omitted)

**Parameters:**
- `height` (query, optional, string) — Block height; omit for latest
- `with_transactions` (query, optional, string) — Include block transactions (true/false)

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/movement-api/v1/block"
```

**Response:**
```json
{
    "data": {
        "block_hash": "0x8de7762d0e0716968e8807ec56ca894a39e06d3ca00ffe09ccf338c12e38454a",
        "block_height": "66024895",
        "last_version": "155441374",
        "first_version": "155441373",
        "block_timestamp": "1781522108238529",
        "transaction_count": 2
    },
    "meta": {
        "timestamp": "2026-06-15T11:15:09.948Z",
        "request_id": "a6cd4b65-1135-4b77-9713-507f4a90dbf6"
    },
    "status": "ok",
    "message": "Block retrieved successfully",
    "success": true
}
```

### Transactions

#### `GET /v1/transactions` — Recent transactions

**Parameters:**
- `limit` (query, optional, string) — Max transactions (1-100) Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/movement-api/v1/transactions?limit=25"
```

**Response:**
```json
{
    "data": {
        "count": 25,
        "network": "Movement Mainnet",
        "transactions": [
            {
                "hash": "0xa161b67ce7b1498a16e6066076924a11c96da4012460af8eb3505a838290f2fc",
                "type": "block_metadata_transaction",
                "sender": null,
                "success": true,
                "version": "155441356",
                "gas_used": "0",
                "timestamp": "1781522106137571",
                "vm_status": "Executed successfully",
                "sequence_number": null
            },
            {
                "hash": "0xa57f2c56f777a3379a838c59213ed3050d160300aca02245808ff6d72ff40bf3",
                "type": "state_checkpoint_transaction",
                "sender": null,
                "success": true,
                "version": "155441357",
                "gas_used": "0",
                "timestamp": "1781522106137571",
                "vm_status": "Executed successfully",
                "sequence_number": null
            },
            {
                "hash": "0x8c19c6c6eb8e79c4ab5a943fce523a2e22484aee740c848f4c16cf8fbfae2e7e",
                "type": "block_metadata_transaction",
                "sender": null,
                "success": true,
                "version": "155441358",
                "gas_used": "0",
                "timestamp": "1781522106466045",
                "vm_status": "Executed successfully",
                "sequence_number": null
            },
            {
        
…(truncated, see openapi.json for full schema)
```

### Accounts

#### `GET /v1/account` — Account info and resource count

**Parameters:**
- `address` (query, required, string) — Account address (0x hex) Example: `0x1`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/movement-api/v1/account?address=0x1"
```

**Response:**
```json
{
    "data": {
        "address": "0x1",
        "resource_count": 60,
        "sequence_number": "0",
        "authentication_key": "0x0000000000000000000000000000000000000000000000000000000000000001"
    },
    "meta": {
        "timestamp": "2026-06-15T11:15:10.959Z",
        "request_id": "907b652a-bd61-41be-8dba-8f6caaaade94"
    },
    "status": "ok",
    "message": "Account retrieved successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Service metadata

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/movement-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "vm": "MoveVM (Aptos-compatible)",
        "name": "Movement Network API",
        "source": "Movement Network public fullnode REST (mainnet.movementnetwork.xyz)",
        "endpoints": [
            {
                "path": "/v1/status",
                "description": "Ledger status: chain id, epoch, ledger version, block height"
            },
            {
                "path": "/v1/block",
                "description": "Block by height (?height=; omit for latest)"
            },
            {
                "path": "/v1/transactions",
                "description": "Recent transactions (?limit=25)"
            },
            {
                "path": "/v1/account",
                "description": "Account info and resource count (?address=0x1)"
            },
            {
                "path": "/v1/meta",
                "description": "This metadata document"
            }
        ],
        "disclaimer": "Unofficial proxy of the public Movement Network fullnode. Not affiliated with Movement. Data only; no guarantees of accuracy or availability.",
        "description": "On-chain data for Movement Network (chain-id 126), a Move-based Layer 2 with an Aptos-compatible REST interface. Exposes ledger status, blocks by height, recent transactions and account information.",
        "native_token": {
            "symbol": "MOVE"
        }
    },
    "meta": {
        "timestamp": "2026-06-15T11:15:11.018Z",
        "request_id": "ca8e7020-cdc0-48b8
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/movement-api
OpenAPI spec: https://www.oanor.com/api/movement-api/openapi.json
