error field and an appropriate HTTP status code. This page documents all error conditions and how to handle them in your integration.
Error Response Shape
All error responses share a consistent envelope:Status Codes
400 Bad Request
A400 is returned when the request body is invalid. These errors are user-correctable — the request must be fixed before retrying.
Common causes
Invalid hash format
Invalid hash format
The Resolution: Ensure the hash is exactly 66 characters —
tx_hash value could not be parsed as a valid Ethereum transaction hash.0x followed by 64 lowercase hex characters.Unsupported chain
Unsupported chain
The Resolution: Set
chain value provided is not currently supported by ParaLens.chain to one of the accepted identifiers: ethereum, mainnet, eth, or 1.502 Bad Gateway
A502 is returned when an upstream dependency fails during analysis. These errors are retryable — the request itself is valid, but a transient failure prevented a result from being produced.
Common causes
- RPC node unavailable or congested
- Transaction trace unavailable (very old transactions, unsupported trace format)
- Analysis engine failure during complex trace processing
Client Error Handling
The snippet below demonstrates a robust fetch wrapper that distinguishes user-correctable400 errors from retryable 502 failures:
Display Guidance
How you surface errors to users depends on your product context:- Developer tools — display the raw
errorfield value directly. The messages are precise and actionable for engineers debugging an integration. - Consumer UIs — replace technical errors with friendly copy:
400→ “Please enter a valid Ethereum transaction hash.”502→ “Analysis temporarily unavailable — please try again.”