Authentication
Public endpoints are rate-limited. Subscription key issuance remains disabled until wallet authentication and entitlements are activated; issued keys will be shown once, hashed at rest, scoped, and revocable.
Endpoints
GET /v1/token/:addressGET /v1/contract/:addressGET /v1/wallet/:addressGET /v1/tx/:hashPOST /v1/preflightPOST /v1/simulatePOST /v1/gateOpenAPI 3.1 document →Gate
POST /v1/gate
{
"chain": "arc",
"from": "0x...",
"to": "0x...",
"value": "0",
"data": "0x...",
"policyId": "..."
}Returns ALLOW, REVIEW, or BLOCK with independent risk, confidence and policy results.
Response contract
{
"decision": "REVIEW",
"riskScore": 37,
"confidence": "HIGH",
"policy": { "passed": false, "violations": [] },
"signals": [],
"evidence": [],
"reportId": "..."
}Stable errors
INVALID_ADDRESS RPC_UNAVAILABLE ANALYSIS_PARTIAL PAYMENT_REQUIRED POLICY_NOT_FOUND RATE_LIMITED
TypeScript SDK
import { Preflight } from "@preflight/sdk";
const preflight = new Preflight({ apiKey });
const result = await preflight.gate({ chain: "arc", transaction });x402
x402 is currently disabled pending a configured treasury and production settlement verification. When enabled, it will use v2 HTTP 402, PAYMENT-REQUIRED, PAYMENT-SIGNATURE and PAYMENT-RESPONSE semantics with CAIP identifiers and direct treasury payTo.