Skip to main content

rollup_getInfo

Get modular L2 rollup configuration on the Mantle network. This method provides essential information about the optimistic rollup parameters, settings, and operational details.

Overview#

Mantle's modular L2 architecture is an optimistic rollup that leverages modular components for enhanced performance and scalability. The rollup configuration includes important parameters for:

  • Batch Processing: How transactions are batched and processed
  • Data Availability: EigenDA integration for efficient data posting
  • Bridge Operations: L1 ↔ L2 asset bridging configuration
  • Network Parameters: Chain ID, block times, and operational settings

Parameters#

This method typically takes no parameters, but implementation may vary. Please refer to the official Mantle documentation for the most current parameter specifications.

Returns#

Rollup configuration object containing comprehensive information about the modular L2 rollup setup.

Implementation Example#

curl -X POST https://api-mantle-mainnet.n.dwellir.com/YOUR_API_KEY \\
-H "Content-Type: application/json" \\
-d '{
"jsonrpc": "2.0",
"method": "rollup_getInfo",
"params": [],
"id": 1
}'

Response Example#

{
"jsonrpc": "2.0",
"id": 1,
"result": {
"mode": "optimistic",
"chainId": "0x1388",
"batchHash": "0x...",
"stateRoot": "0x...",
"withdrawalRoot": "0x...",
"sequencer": "0x...",
"version": "1.0.0"
}
}

Understanding Mantle Modular L2 Configuration#

Key Components#

  1. Mode: Operating mode of the rollup (optimistic)
  2. Chain ID: Network identifier (5000 for mainnet, 5003 for testnet)
  3. State Root: Root hash of the current state tree
  4. Batch Hash: Hash of the current batch of transactions
  5. Sequencer: Address of the transaction sequencing system
  6. Version: Current version of the rollup implementation

Modular L2 Architecture#

  • Sequencing: Optimistic transaction ordering and execution
  • Data Availability: EigenDA integration for efficient data posting
  • EVM Compatibility: Full compatibility with Ethereum Virtual Machine
  • Finality: Fast L2 finality with 7-day challenge period for L1 finality

Common Use Cases#

1. Network Health Monitoring#

// Monitor rollup health and performance
async function monitorRollupHealth(analyzer) {
const healthCheck = async () => {
const status = await analyzer.getComprehensiveRollupStatus();

const alerts = [];

// Check block production
if (status.current_state.block_age_seconds > 300) {
alerts.push({
type: 'stale_blocks',
severity: 'warning',
message: 'Blocks are older than expected'
});
}

// Check gas utilization
if (status.current_state.gas_utilization > 95) {
alerts.push({
type: 'high_utilization',
severity: 'info',
message: 'Network experiencing high usage'
});
}

return {
status: alerts.length === 0 ? 'healthy' : 'warning',
alerts: alerts,
metrics: status.current_state
};
};

return healthCheck;
}

2. Integration Compatibility Check#

def check_integration_compatibility(analyzer):
"""Check if current rollup config is compatible with integration"""

status = analyzer.get_comprehensive_rollup_status()
rollup_info = status['rollup_config']

compatibility = {
'evm_compatible': True, # Modular L2 is fully EVM compatible
'supported_features': [
'Standard Ethereum transactions',
'Smart contract deployment',
'ERC token standards',
'Event emission and filtering',
'eth_call and eth_estimateGas',
'Debug and trace methods'
],
'limitations': [
'7-day withdrawal period for L1 finality',
'L1 data posting affects costs',
'Optimistic fraud proof mechanism'
],
'recommended_practices': [
'Use standard Ethereum tooling',
'Account for withdrawal delays',
'Monitor gas price fluctuations with MNT token',
'Leverage EigenDA data availability benefits'
]
}

return compatibility

3. Performance Benchmarking#

// Benchmark rollup performance characteristics
async function benchmarkRollupPerformance(analyzer) {
const benchmark = {
testDuration: '10 minutes',
metrics: {},
recommendations: []
};

// Monitor for performance data
const performanceData = await analyzer.monitorRollupPerformance(10);

benchmark.metrics = {
avgBlockTime: performanceData.block_production.average_block_time,
gasUtilization: performanceData.gas_utilization.average,
healthScore: performanceData.network_health.health_score
};

// Generate recommendations
if (benchmark.metrics.avgBlockTime > 5) {
benchmark.recommendations.push(
'Block times are longer than expected - monitor network congestion'
);
}

if (benchmark.metrics.gasUtilization > 80) {
benchmark.recommendations.push(
'High gas utilization - consider transaction timing optimization'
);
}

return benchmark;
}

Integration Considerations#

Development#

  • Tooling: Use standard Ethereum development tools (Hardhat, Truffle, Remix)
  • RPC Compatibility: Full JSON-RPC compatibility with additional rollup-specific methods
  • Gas Estimation: Account for MNT gas token and EigenDA data costs

Production Deployment#

  • Security: Leverage optimistic rollup security with fraud proofs
  • Monitoring: Monitor both L2 state and L1 batch submission
  • Bridge Integration: Plan for canonical bridge usage and withdrawal delays

User Experience#

  • Transaction Speed: Fast L2 confirmation with 7-day L1 finality
  • Cost Optimization: Benefit from MNT gas token and EigenDA efficiency
  • Bridge UX: Clear communication about withdrawal timeframes

Need help? Contact our support team or check the Mantle documentation.