Error Handling
The client distinguishes between failure modes through explicit exception types.
Common Error Categories
NetworkError: connection failures, timeouts, and transport errorsAuthError: authentication or signing failuresApiError: the remote API returned an application-level errorValidationError: the response shape did not match the expected schemaUserError: incorrect local usage of the clientValueError: missingHYPERLIQUID_PRIVATE_KEYwhen using wallet-backed convenience constructors
Recommended Pattern
from hyperliquid.core import ApiError, AuthError, NetworkError, ValidationError
try:
...
except ValidationError:
...
except AuthError:
...
except ApiError:
...
except NetworkError:
...
Operational Guidance
- retry transient network failures carefully
- do not blindly retry signing or authentication failures
- log validation failures because they often signal upstream API changes
- keep trading examples separate from harmless exchange actions like
noop()