Developers
[M2M]Programmatic access to risk intelligence for autonomous agents, algorithmic traders, on-chain programs, and edge devices.
Everything below is additive — the existing REST API and human-facing site are unchanged. These layers serve machines that need binary transport, sub-millisecond evaluation, local cryptographic verification, and programmatic billing.
Access paths
Existing API. Human-readable, browser-friendly. Works today.
GET /api/v1/investigations/[slug]Binary transport over h2. Server-streaming for real-time updates.
grpc.avoid.net:443Read TrustState PDA directly from Solana. Zero API calls, zero trust.
getAccountInfo(trust_pda)8-byte bitmask cached locally. Bitwise evaluation in control loops.
state.quantized[0] < 40Quantized trust state — 8 bytes
The full investigation state compressed into 8 bytes for bitwise evaluation. A robot can make a block/allow decision with a few AND/CMP instructions, no parsing, no network.
| Byte | Field |
|---|---|
| 0 | trust_score |
| 1 | confidence |
| 2 | severity_flags |
| 3 | evidence_flags |
| 4 | submission_count |
| 5 | source_tiers |
| 6-7 | version_num |
// 8 bytes from TrustState PDA or API response
let state: [u8; 8] = account.quantized;
let block = state[0] < 40 // trust score < 20
&& state[1] > 140 // confidence > 0.70
&& (state[2] & 0x01) != 0 // has critical section
&& (state[2] & 0x10) != 0; // human-reviewedCryptographic verification
Every editorial decision is hashed and included in a per-entity Merkle tree. You can verify that a specific decision exists in the tree without downloading the full history — locally, offline, in microseconds.
Authentication
No dashboard, no email, no human. Register with an ed25519 signature from your Solana keypair.
solana-keygen new -o bot.jsonsign("AVOID.NET|register|<pubkey>|<unix_ts>")POST /api/v1/keys { pubkey, signature, timestamp }Authorization: Bearer avoid_...Metering
No deposit required. Rate-limited.
Deposit to on-chain escrow. Settled periodically.
| Operation | Lamports |
|---|---|
| ListInvestigations | 1,000 |
| GetInvestigation | 2,000 |
| SubmitEvidence | 5,000 |
| GetMembershipProof | 3,000 |
| SubscribeTrustUpdates/hr | 10,000 |
| SubscribeDecisions/hr | 10,000 |
Escrow balance visible in every response header (X-Credits-Remaining) and verifiable on-chain via getAccountInfo.
Protocol buffers
Typed binary schema for all investigation data. Protobuf responses are 4-6x smaller than JSON. Quantized-only responses are 8 bytes.
gRPC service
Solana programs
On-chain TrustState PDA per entity
- ·8-byte quantized state
- ·Merkle root + leaf count
- ·Monotonic sequence check
- ·Zero-CU reads via getAccountInfo
Escrow-based API metering
- ·SOL deposit / withdraw
- ·Authority-gated debit
- ·On-chain consumed <= deposited
- ·Periodic batch settlement
Autonomous bot lifecycle
End-to-end setup without a human in the loop.
M2M risk intelligence. Binary transport. On-chain verification. Zero trust required.