rollup_getInfo - Get modular L2 rollup config...
Get modular L2 rollup configuration on Mantle Network. Essential for understanding the optimistic rollup parameters and settings.
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
Request Parameters
This method accepts no parameters.
Response Body
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
}'Understanding Mantle Modular L2 Configuration
Key Components
- Mode: Operating mode of the rollup (optimistic)
- Chain ID: Network identifier (5000 for mainnet, 5003 for testnet)
- State Root: Root hash of the current state tree
- Batch Hash: Hash of the current batch of transactions
- Sequencer: Address of the transaction sequencing system
- 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 compatibility3. 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
Related Methods
rollup_gasPrices- Get gas price oracle dataeth_chainId- Get network chain IDeth_getBlockByNumber- Get block information
Need help? Contact our support team or check the Mantle documentation.
rollup_gasPrices - Get modular L2 gas price o...
Get modular L2 gas price oracle data on Mantle Network. Essential for understanding gas pricing on the optimistic rollup.
MegaETH
Complete guide to MegaETH integration with Dwellir RPC. Learn how to build on the first real-time blockchain with sub-millisecond latency and 100,000+ TPS.