eth_call — Base JSON-RPC
Execute a read-only EVM call.
- Scope
- base:rpc
Endpoint and plans: Base RPC endpoint.
Parameter limits
| JSON path | Frozen limit | Source |
|---|---|---|
| — | unknown | No numeric parameter ceiling is frozen; enforce the declared schema shape and deny an unknown oversized/range profile. |
Parameter-dependent tier profiles from CAPABILITIES:
bounded_current_state_or_logs: minimumfree, budgetbase_read_rpc.historical_state_or_heavy_range_or_overrides: minimumpro, budgetbase_read_rpc_heavy; gate: verified per-provider depth/range/schema; null limit denies.
Historical block retrieval is not an archive-state guarantee. Selectors must be preserved; do not substitute pending, safe, or finalized with latest.
Rate limits and tier
These are enforced product-policy values, not measured upstream capacity or an SLA. Enterprise is finite, never physical “unlimited” capacity.
| Tier | Limit / access | Category |
|---|---|---|
| Free | 10 RPS sustained · up to 20 burst | base_read_rpc |
| Basic | 20 RPS sustained · up to 40 burst | base_read_rpc |
| Pro | 100 RPS sustained · up to 200 burst | base_read_rpc |
| Business | 250 RPS sustained · up to 500 burst | base_read_rpc |
| Enterprise | 250 RPS sustained · up to 500 burst | base_read_rpc |
See Base limits and Burst capacity. The included buffer refills at sustained RPS; there is no quota on the number of bursts.
Errors
| Code | Meaning here | Client action |
|---|---|---|
-32602 | Parameters fail the declared schema or upstream parser. | Fix the positional parameters; parser acceptance is not execution success. |
Tier and budget rejections are not JSON-RPC errors: the gate decides them before the request reaches the RPC layer and answers with a plain HTTP envelope — 403 tier_insufficient (with an X-Required-Tier header) or 429 rate_limited (honor Retry-After). Both are enforced product policy, not measured capacity or an SLA.
Authentication/transport failures use the shared client error envelope. See Base errors.
Evidence
- Fixture kind:
negative. - Fixture source:
infra-4-sety/integration-base/research/R00/import/originals/recon/bse_inventory_s1t6_snapshot2.json. - Fixture SHA-256:
4282b38ef75f957b6f5636fe54f6bbf82e2c1e78c58d11dbfd0a210a61440cf1. - Fixture registry:
infra-4-sety/integration-base/research/R00/import/FIXTURES_INDEX.json. - Semantic assertion: Finite window with repeated 12-member set must not imply permanent no rotation.
- Evidence boundary: Replay only this bounded assertion; no provider calls or original Python execution. Metadata/response fragments can test rejection but cannot prove capability.
Limitations
- Base-specific overrides and historical state need proof.
- Availability is the frozen baseline, not deployed readiness. documented is the contract floor; evidence_kind retains unknown/source_summary.