⚠️Blast API (blastapi.io) ends Oct 31. Migrate to Dwellir and skip Alchemy's expensive compute units.
Switch Today →
Skip to main content

rollup_getInfo

Get zkEVM rollup configuration on the Linea network. This method provides essential information about the zkEVM rollup parameters, settings, and operational details.

Overview

Linea zkEVM is a Layer 2 scaling solution that uses zero-knowledge proofs to provide high throughput while maintaining Ethereum's security. The rollup configuration includes important parameters for:

  • Batch Processing: How transactions are batched and processed
  • Proof Generation: Zero-knowledge proof parameters
  • 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 Linea documentation for the most current parameter specifications.

Returns

Rollup configuration object containing comprehensive information about the zkEVM rollup setup.

Implementation Example

curl -X POST https://api-linea-mainnet-archive.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": "zkevm",
"chainId": "0xe708",
"publicInputHash": "0x...",
"stateRoot": "0x...",
"withdrawalRoot": "0x...",
"batchCommitment": "0x...",
"prover": "0x...",
"version": "1.0.0"
}
}

Understanding Linea zkEVM Configuration

Key Components

  1. Mode: Operating mode of the rollup (zkEVM)
  2. Chain ID: Network identifier (59144 for mainnet, 59140 for testnet)
  3. State Root: Root hash of the current state tree
  4. Batch Commitment: Commitment to the current batch of transactions
  5. Prover: Address of the proof generation system
  6. Version: Current version of the rollup implementation

zkEVM Architecture

  • Proof System: Zero-knowledge proofs validate transaction execution
  • Data Availability: Transaction data posted to Ethereum L1
  • EVM Compatibility: Full compatibility with Ethereum Virtual Machine
  • Finality: Probabilistic finality on L2, cryptographic finality via proofs

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, # zkEVM 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': [
'Proof generation delays for finality',
'L1 data posting affects costs',
'Bridge withdrawals require waiting period'
],
'recommended_practices': [
'Use standard Ethereum tooling',
'Account for L1 fee components',
'Plan for withdrawal delays',
'Monitor gas price fluctuations'
]
}

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 > 15) {
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 both L2 execution and L1 data posting costs

Production Deployment

  • Security: Leverage zkEVM's cryptographic security guarantees
  • Monitoring: Monitor both L2 state and L1 proof submission
  • Bridge Integration: Plan for canonical bridge usage and withdrawal delays

User Experience

  • Transaction Speed: Fast L2 confirmation with eventual L1 finality
  • Cost Optimization: Optimize transaction data to minimize L1 costs
  • Bridge UX: Clear communication about withdrawal timeframes

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