Select an Endpoint
Choose an endpoint from the left menu to view documentation and test live responses.
Architectural & Verification Specifications
1. 4-Step Agent Policy-Pipeline Architecture
Static bytecode analysis produces capability signals, not autonomous enforcement. Consuming AI agents and bots implement our standardized 4-step policy model:
Extract PUSH-aware opcodes (e.g.
DELEGATECALL) and 4-byte selectors (e.g. pause()).
Structural risk (e.g. implementation logic can mutate or token transfers can be halted).
Agent rule evaluation (e.g.
if (hasPause && !allowPaused) return BLOCK;).
PERMIT or BLOCK transaction before gas commitment.
2. RPC Trust Hierarchy & Quorum Consensus
Every bytecode analysis and data point carries cryptographic provenance and trust grading:
| Trust Level | Definition & Requirement | Evidence Grade |
|---|---|---|
HIGH_TRUST_PRIMARY |
Authenticated, TLS 1.3-enforced Base RPC endpoint configured by operator (e.g. Alchemy, QuickNode) with Chain ID 8453 validation. | TRUE |
QUORUM_PUBLIC |
Consensus agreement across ≥ 2 independent public Base mainnet RPCs (Base.org, 1RPC, DRPC, Blast, MeowRPC). | TRUE |
DEGRADED_LOW_TRUST |
A lone public endpoint answered without quorum verification. Capability rating degrades to UNVERIFIED. |
FALSE |
UNTRUSTED_INSECURE |
Insecure HTTP or invalid chain data. Fails closed with HTTP 503. | FALSE |
3. Latency & Performance Benchmark Distribution
Measured on Node.js 22 runtime on AWS IAD1 directly connected to Base Mainnet:
4. Real-World Case Study: Autonomous DEX Swap Preflight Guard
Measured Latency: 28msWhen an autonomous agent or trading bot executes swaps on Base (e.g. Aerodrome, Slipstream, Uniswap V3), an uninstantiated proxy slot or active freeze selector can lock funds or cause silent transaction reverts. M2M Sentinel acts as an inline deterministic circuit-breaker before gas commitment:
const { M2MSentinelClient } = require('m2m-sentinel-sdk');
const sentinel = new M2MSentinelClient({ apiKey: process.env.M2M_SENTINEL_API_KEY });
async function preflightSwapGuard(targetToken) {
// 1. Fetch deterministic static capability telemetry (28ms)
const audit = await sentinel.auditContract(targetToken);
// 2. Reject uninstantiated / broken proxies before signing
if (audit.proxy && audit.proxy.isProxy && !audit.proxy.implementationAddress) {
throw new Error(`[REJECTED] Broken proxy with null implementation slot.`);
}
// 3. Evaluate observed freeze / pause capability flags against policy
const capabilities = audit.observedCapabilities || [];
if (capabilities.includes('FREEZE_SELECTOR')) {
throw new Error(`[REJECTED] Target contract contains active freeze selector.`);
}
return { verified: true, trust: audit.trustLevel };
}