Service definition
Messages
ParseRequest
The main request for parsing transactions.Chain enum
Supported blockchain networks:ChainMetadata
Chain-specific metadata for enhanced parsing:ParseResponse
The parsed transaction response:Signature
Cryptographic signature for attestation:Response structure
Theparsed_payload field contains a JSON string with the following structure:
Usage examples
Basic transaction parsing
With contract ABI
Solana with Anchor IDL
Solana with a max fee
Every Solana payload carries a top-level fee cap row right after the header rows: the caller’smax_fee_lamports when the request sets one, labelled “Max
Fee”, otherwise the parser’s default cap of 0.1 SOL (100000000 lamports),
labelled “Max Fee (default)”. The parser rejects the request when the
transaction commits to more than the cap in force: 5000 lamports per signature,
counting the ones precompile instructions verify, plus the compute budget’s
priority fee. That fee is the unit price times the requested unit limit, or,
with no limit, times the runtime’s default limit for the message (3000 units for
each builtin instruction, 200000 for any other, at most 1400000). Compute budget
requests are decoded as the runtime decodes them, so trailing bytes are ignored.
A request the runtime rejects is rejected here too: one that does not decode, a
repeated price, limit, heap frame, or loaded accounts data size, a heap frame
size out of range, a zero loaded accounts data size, or the unused variant. With
include_intermediate_output, the cap in force is also the trailing
max_fee_lamports field of the Solana intermediate output. That output is at
schema version 5, which also adds a native_instruction_decoder tag right after
the version. A consumer that rewrites the compute budget instructions after
parsing, for example to re-price at signing time, changes the fee the cap bounds
and must re-check the final fee against max_fee_lamports itself.
Response format
Successful response
Error response
Errors follow the standard gRPC status codes:Health check API
The service also implements the standard gRPC health check:Client libraries
Go
Python
JavaScript/TypeScript
Rate limits
The parser service enforces the following limits:- Request size: Max 1MB per transaction
- Timeout: 30 seconds per request
- Concurrent requests: 100 per client