Partial success
BothwalletPositions and poolDetails support partial success. When you query multiple protocols in one request, each protocol resolves independently. Successful results appear in data, failures appear in errors.
This means a timeout from one protocol never blocks the response from another.
Partial failure response
Error structure
Error codes
| Code | Description | Retryable |
|---|---|---|
NETWORK_ERROR | Upstream service is unreachable | Yes |
VALIDATION_ERROR | Invalid input parameters (bad address, unsupported chain) | No |
TIMEOUT | Request exceeded the time limit | Yes |
PROTOCOL_ERROR | Protocol adapter returned an error | No |
UNKNOWN_ERROR | Unexpected failure | Yes |
Best practices
Retry strategy
Retry strategy
Check the
retryable field before retrying. For retryable errors, use exponential backoff:Handling partial data
Handling partial data
Process successful results immediately, even if some protocols failed:
Common validation errors
Common validation errors
These errors are not retryable — fix the input before retrying:
- Invalid wallet address: Must be a valid hex address (0x-prefixed, 42 characters)
- Unsupported chain: The protocol does not support the requested chain ID. See supported chains
- Unknown protocol: The protocol identifier is not recognized